AI Personal Learning
und praktische Anleitung
讯飞绘镜

LangGraph CodeAct: Codegenerierung zur Unterstützung von Intelligenzen bei der Lösung komplexer Aufgaben

Allgemeine Einführung

LangGraph CodeAct ist ein auf GitHub offen zugängliches Framework des LangChain AI-Teams, das auf der CodeAct-Architektur basiert (siehe Paper arXiv:2402.01030 für Details). Es hilft Intelligenzen, komplexe Aufgaben effizient zu bearbeiten, indem es Python-Code generiert und ausführt. Dieses Werkzeug wird Manus.im verwendet, im Gegensatz zu traditionellem JSON FunktionsaufrufEs nutzt die volle Programmierleistung von Python, um den Output mehrerer Tools zu integrieren und die Anzahl der Schritte zu reduzieren. Es unterstützt den Nachrichtenverlauf und die Speicherung von Variablen für kontinuierliche Dialoge oder erweiterte Aufgabenszenarien. Seit dem 29. März 2025 wird das Projekt immer noch aktiv gepflegt und ist für KI-Entwickler offen.

 

Funktionsliste

  • Intelligente Körper erzeugen Python-Code und führen ihn aus, um Aufgaben direkt zu erledigen.
  • Speichern Sie den Dialogverlauf und unterstützen Sie kontinuierliche Befragungen.
  • Bewahren Sie Python-Variablen für eine einfache Referenzierung durch nachfolgende Aufgaben.
  • etw. unterstützen .invoke() das Endergebnis abrufen, oder .stream() Sie erhalten eine schrittweise Ausgabe.
  • Kompatibel mit benutzerdefinierten Tools, LangChain-Tools und MCP Werkzeuge.
  • Funktioniert mit jedem LangChain-unterstützten Modell (nur offizielle Tests) Claude 3.7).
  • Bietet eine benutzerdefinierte Code-Sandbox-Schnittstelle für mehr Flexibilität.
  • Die Worte der Systemansage können frei eingestellt werden.

 

Hilfe verwenden

LangGraph CodeAct ist ein Open-Source-Framework für Entwickler, das hauptsächlich in der Python-Umgebung läuft. Hier finden Sie eine detaillierte Installations- und Nutzungsanleitung, die Ihnen den Einstieg erleichtert.

Einbauverfahren

Sie benötigen Python 3.8 oder höher, bevor Sie es verwenden können. Die Installationsschritte sind wie folgt:

  1. Projekt herunterladen
    Öffnen Sie ein Terminal und geben Sie den Befehl Repository klonen ein:
git clone https://github.com/langchain-ai/langgraph-codeact.git

Wechseln Sie dann in das Projektverzeichnis:

cd langgraph-codeact
  1. Installation von Kernabhängigkeiten
    Führen Sie den folgenden Befehl aus, um die grundlegenden Abhängigkeiten zu installieren:
pip install langgraph-codeact

Die Installation ist auch erforderlich, wenn Sie Beispiele ausführen oder ein bestimmtes Modell verwenden möchten (z. B. Claude 3.7):

pip install langchain langchain-anthropic
  1. Umgebungsvariablen konfigurieren
    Wenn Sie das Modell Claude verwenden, müssen Sie die Anthropisch API-Schlüssel. Geben Sie ihn in das Terminal ein:
export ANTHROPIC_API_KEY="你的密钥"

Der Schlüssel kann von der Anthropic-Website bezogen werden. Wenn Sie andere Modelle verwenden, lesen Sie bitte die entsprechende Dokumentation zur Konfiguration.

Grundlegende Verwendung

Nach der Installation wird LangGraph CodeAct von einem Python-Skript aus aufgerufen. Hier sehen Sie, wie das geht:

  1. Initialisierung der Intelligenz
    Erstellen Sie ein einfaches Skript wie run_agent.pygeben Sie den folgenden Code ein:
from langchain.chat_models import init_chat_model
from langgraph_codeact import create_codeact
from langgraph.checkpoint.memory import MemorySaver
# 初始化模型
model = init_chat_model("claude-3-7-sonnet-latest", model_provider="anthropic")
# 创建 CodeAct 实例(无工具示例)
code_act = create_codeact(model, tools=[], eval=None)
# 编译智能体,启用内存保存
agent = code_act.compile(checkpointer=MemorySaver())
  1. Laufende Aufgaben
    Geben Sie ein Problem ein und lassen Sie die Intelligenzen einen Code generieren und ausführen. Beispiel:

    messages = [{"role": "user", "content": "计算 5 的平方根"}]
    result = agent.invoke({"messages": messages})
    print(result["messages"][-1].content)
    

    Die Ausgabe ist ähnlich:sqrt(5) = 2.23606797749979.

Tools hinzufügen

Das offizielle Beispiel bietet mathematische Werkzeuge zur Stärkung der Intelligenz. Hier ist, wie man es hinzufügt:

  1. Definitionswerkzeuge
    Fügen Sie dem Skript mathematische Funktionen hinzu:

    from langchain_core.tools import tool
    import math
    @tool
    def add(a: float, b: float) -> float:
    """加法工具"""
    return a + b
    @tool
    def sqrt(a: float) -> float:
    """平方根工具"""
    return math.sqrt(a)
    tools = [add, sqrt]
    
  2. Integrationswerkzeuge
    Ändern Sie den Initialisierungscode:

    code_act = create_codeact(model, tools=tools, eval=None)
    agent = code_act.compile(checkpointer=MemorySaver())
    

    Intelligentsia kann jetzt add(3, 4) vielleicht sqrt(16).

Sandbox für benutzerdefinierten Code

Standardmäßige Verwendung eval Führen Sie den Code aus, aber die Produktionsumgebung muss in einer sicheren Sandbox untergebracht werden. Beispielcode:

def custom_sandbox(code: str, _locals: dict) -> tuple[str, dict]:
try:
with open("temp.py", "w") as f:
f.write(code)
import subprocess
result = subprocess.check_output(["python", "temp.py"], text=True)
return result, {}
except Exception as e:
return f"错误: {e}", {}

Geben Sie diese Funktion ein:

code_act = create_codeact(model, tools=tools, eval=custom_sandbox)

Featured Function Bedienung

  • Code generieren
    Geben Sie "Berechne die Summe von 3 und 5" ein, und die Intelligenz wird erzeugt:

    result = add(3, 5)
    print(result)  # 输出 8
    
  • Dialog mit der Geschichte
    Dann fragen Sie "Ergebnis plus 2", und lernen Sie auf intelligente Weise, sich das zu merken resultGeneration:

    new_result = result + 2
    print(new_result)  # 输出 10
    
  • Streaming-Ausgang
    ausnutzen .stream() Schritt-für-Schritt-Ergebnisse anzeigen:

    for typ, chunk in agent.stream({"messages": messages}):
    if typ == "messages":
    print(chunk[0].content, end="")
    

caveat

  • Produktionsumgebungen vermeiden die direkte Verwendung von evalSie muss durch eine Sandbox geschützt werden.
  • Claude 3.7 ist das offiziell empfohlene Modell, andere Modelle müssen möglicherweise für Stichwortwörter angepasst werden.
  • Werkzeugdefinitionen müssen der LangChain-Spezifikation mit eindeutigen Parametertypen entsprechen.

Mit diesen Schritten können Sie Intelligenzen aufbauen, um verschiedene Aufgaben mit LangGraph CodeAct zu lösen.


 

Anwendungsszenario

  1. Matheunterricht
    Die Schüler geben Themen ein, wie z. B. "Berechne die Parabeldistanz", und der intelligente Körper generiert Code und gibt Ergebnisse aus, um das Lernen zu erleichtern.
  2. Datenverarbeitung
    Entwickler verwenden es, um automatisch Skripte zu erstellen, CSV-Dateien zu verarbeiten oder Statistiken zu berechnen.
  3. AI-Experimente
    Die Forscher testen die Fähigkeit von Intelligenzen zur Codegenerierung, um komplexe Aufgabenprozesse zu optimieren.

 

QA

  1. Welche Programmiersprachen werden unterstützt?
    Derzeit wird nur Python unterstützt, da es die primäre Ausführungssprache ist.
  2. Wie lassen sich Codefehler beheben?
    ausnutzen .stream() Sehen Sie sich den generierten Code an, oder überprüfen Sie die Sandbox-Ausgabe auf Fehlermeldungen.
  3. Können Sie keine Werkzeuge benutzen?
    Ja, bei der Initialisierung eingestellt tools=[]und verlässt sich bei der Codegenerierung ausschließlich auf das Modell.
Darf nicht ohne Genehmigung vervielfältigt werden:Leiter des AI-Austauschkreises " LangGraph CodeAct: Codegenerierung zur Unterstützung von Intelligenzen bei der Lösung komplexer Aufgaben
de_DEDeutsch