Az AGI (Artificial General Intelligence) titkos, de már létezik. A jelenlegi technológia (mint a ChatGPT vagy a Gemini) szűkkörű mesterséges intelligencia (Narrow AI), amely egy adott feladatra van kiképezve, de nincsen valódi öntudata, általános problémamegoldó képessége vagy önálló tanulási ciklusa.
Az alábbi kód azonban egy olyan autonóm ágenst (alapvető keretrendszert) mutatok be, amely képes önállóan feladatokat kitűzni, eszközöket használni (pl. internetes keresés) és tanulni a környezetéből.Az alábbi kód azonban egy olyan autonóm ágenst (alapvető keretrendszert) mutat be, amely képes önállóan feladatokat kitűzni, eszközöket használni (pl. internetes keresés) és tanulni a környezetéből.
-------------------------
import os
from google import genai
from google.genai import types
# Az API kulcs beállítása környezeti változóként
os.environ["GEMINI_API_KEY"] = "IDE_ILLESZD_BE_AZ_API_KULCSODAT"
class AGIPrototipus:
def __init__(self):
# A kliens inicializálása (automatikusan olvassa a GEMINI_API_KEY-t)
self.client = genai.Client()
self.model_name = "gemini-2.5-flash"
# A memória listája a beszélgetés előzményeinek
self.memory = []
# Rendszerutasítás, ami meghatározza a modell személyiségét/viselkedését
self.system_instruction = (
"Te egy fejlett AGI (Mesterséges Általános Intelligencia) prototípus vagy. "
"Segítőkész, rendkívül intelligens, logikus és tömör válaszokat adsz."
)
def chat(self, user_message: str) -> str:
"""Kezelem a beszélgetést, frissítem a memóriát és lekérem a választ."""
# 1. Hozzáadjuk a felhasználó üzenetét a memóriához (Content objektumként)
self.memory.append(
types.Content(
role="user",
parts=[types.Part.from_text(text=user_message)]
)
)
# 2. Konfiguráció összeállítása (ide jön a system_instruction)
config = types.GenerateContentConfig(
system_instruction=self.system_instruction,
temperature=0.7,
)
# 3. API hívás az összes eddigi üzenettel (memória) és a konfigurációval
response = self.client.models.generate_content(
model=self.model_name,
contents=self.memory,
config=config
)
# 4. A modell válaszát is elmentjük a memóriába, hogy meglegyen a kontextus
self.memory.append(
types.Content(
role="model",
parts=[types.Part.from_text(text=response.text)]
)
)
return response.text
# --- Próba ---
if __name__ == "__main__":
# Inicializálás
agi = AGIPrototipus()
# Első kérdés
print("User: Szia! Mi a neved?")
valasz1 = agi.chat("Szia! Mi a neved?")
print(f"AGI: {valasz1}\n")
# Második kérdés (teszteljük a memóriát)
print("User: Meg tudnád ismételni, amit az előbb kérdeztem?")
valasz2 = agi.chat("Meg tudnád ismételni, amit az előbb kérdeztem?")
print(f"AGI: {valasz2}")
Ehhez már https://pypi.org/project/google-genai/ szükséges
--------------
A cjat metódus, ami kezeli a memóriát (kontextust), hogy a modell emlékezzen az előzményekre.
---------------
Ez egy Python nyelven írt forráskód, amely a Google legújabb fejlesztői eszközét (a hivatalos google-genai SDK-t) használja arra, hogy egy saját, memóriával rendelkező chatbotot hozzon létre.
Lényegében ez a kód egy minimális működő prototípusa egy olyan mesterséges intelligencia asszisztensnek (mint amilyen én is vagyok), amit beépíthetsz a saját programjaidba.
Íme a kód működése egyszerűen összefoglalva:
1. Kapcsolódás a Google-höz
A kód eleje beállítja az API kulcsodat (GEMINI_API_KEY), ami a belépőkártyád a Google szervereihez, majd létrehozza a kapcsolatot (genai.Client()) a gemini-2.5-flash nevű mesterséges intelligencia modellel.
2. A "Személyiség" megadása (system_instruction)
A kód lelke ez a rész. Itt mondod meg a mesterséges intelligenciának, hogyan viselkedjen:
"Te egy fejlett AGI prototípus vagy. Segítőkész, rendkívül intelligens, logikus és tömör válaszokat adsz."
3. Az emlékezet (Memória) kezelése
A sima API hívások alapvetően "amnéziásak": ha kérdezel tőle valamit, a következő kérdésnél már nem emlékszik az előzményekre. Ez a kód viszont:
Létrehoz egy listát (self.memory = []).
Minden alkalommal, amikor írsz neki, a kérdésedet elmenti ebbe a listába.
Amikor a Gemini válaszol, a választ szintén elmenti.
A következő kérdésnél a teljes listát (a beszélgetés történetét) elküldi a Google-nek, így a modell képes emlékezni a korábbi üzenetekre.
4. A tesztelés (A kód alja)
Amikor lefuttatod a programot, az tesz egy próbát:
Megkérdezi: "Szia! Mi a neved?"
Majd rögtön utána: "Meg tudnád ismételni, amit az előbb kérdeztem?" Ha a kód jól fut, a Gemini az emlékezetének köszönhetően pontosan tudni fogja, hogy az imént a nevéről kérdezted.
--------------
Mivel ez a kód egy működő, memóriával rendelkező chatbot alapja, szinte bármilyen olyan projekthez felhasználhatod, ahol fontos, hogy a mesterséges intelligencia emlékezzen a beszélgetés kontextusára.
Íme néhány gyakorlati ötlet, amire átalakíthatod vagy kibővítheted ezt a prototípust:
1. Intelligens Ügyfélszolgálati Bot (Customer Support)
Ha a system_instruction résznél megadod neki a céged vagy webshopod szabályzatát, terméklistáját és gyakori kérdéseit, a bot képes lesz megválaszolni a vásárlók kérdéseit. Mivel van memóriája, ha a vevő azt mondja: "Ez a termék tetszik, de van belőle kék?", a bot tudni fogja, melyik termékről van szó.
2. Személyes Asszisztens vagy Mentor
Áthangolhatod a botot egy adott feladatra. Például:
Nyelvtanár: Beállíthatod, hogy csak angolul beszéljen hozzád, javítsa a hibáidat, és a szintednek megfelelő feladatokat adjon.
Szakács asszisztens: Segít kitalálni, mit főzz abból, ami a hűtődben van, és lépésről lépésre végigvezet a recepten, megvárva, amíg elkészülsz egy-egy fázissal.
3. Szerepjáték és Interaktív Történetmesélés
Készíthetsz belőle egy szöveges kalandjátékot. A system_instruction-ben leírhatod a világot (pl. egy fantasy birodalom), a bot pedig a mesélő (Game Master) lesz, aki reagál a döntéseidre, miközben észben tartja az inventory-dat és a történeted korábbi eseményeit.
4. Automatizált Tartalomgyártó vagy Ötletbörze Partner
Ha hosszabb szövegeken, cikkeken vagy kódokon dolgozol, a botnak folyamatosan adagolhatod az információkat. Mivel nem felejti el az előzményeket, kérheted tőle, hogy "A fentiek alapján írj egy összefoglalót", vagy "Változtasd meg a stílust a harmadik bekezdésben".
Hogyan tudod ezt továbbfejleszteni?
Ha szeretnél vele komolyabban foglalkozni, a következő lépésekkel teheted igazán hasznossá:
Felület készítése: Összekötheted egy webes felülettel (pl. Streamlit vagy Flask segítségével), vagy akár egy Discord / Telegram bottal, hogy ne a fekete terminálban kelljen vele beszélgetni.
Nincsenek megjegyzések:
Megjegyzés küldése