일반 소개
LangGraph 코드액트는 코드액트 아키텍처를 기반으로 한 LangChain AI 팀이 GitHub에서 오픈소스로 제공하는 프레임워크입니다(자세한 내용은 논문 arXiv:2402.01030 참조). 이 프레임워크는 인공지능이 Python 코드를 생성하고 실행하여 복잡한 작업을 효율적으로 처리할 수 있도록 도와줍니다. 이 도구는 Manus.im이 사용하는 기존 JSON과 달리 함수 호출파이썬의 모든 프로그래밍 기능을 사용하여 여러 도구의 출력을 통합하고 단계 수를 줄입니다. 지속적인 대화 또는 고급 작업 시나리오를 위한 메시지 기록 및 변수 저장을 지원합니다. 2025년 3월 29일 현재, 이 프로젝트는 여전히 활발하게 유지되고 있으며 AI 개발자들에게 공개되어 있습니다.
기능 목록
- 인텔리전트 바디는 작업을 직접 완료하기 위해 Python 코드를 생성하고 실행합니다.
- 대화 기록을 저장하고 지속적인 질문을 지원하세요.
- 후속 작업에서 쉽게 참조할 수 있도록 Python 변수를 보존하세요.
- 지원
.invoke()
최종 결과를 얻거나.stream()
단계별 출력을 얻습니다. - 사용자 지정 도구, LangChain 도구 및 MCP 도구.
- 모든 LangChain 지원 모델에서 작동합니다(공식 테스트만 해당). Claude 3.7).
- 유연성을 위한 사용자 지정 코드 샌드박스 인터페이스를 제공합니다.
- 시스템 프롬프트 문구를 자유롭게 조정할 수 있습니다.
도움말 사용
랭그래프 코드액트는 주로 파이썬 환경에서 실행되는 개발자용 오픈 소스 프레임워크입니다. 다음은 시작하는 데 도움이 되는 자세한 설치 및 사용 가이드입니다.
설치 프로세스
이 기능을 사용하려면 Python 3.8 이상이 필요합니다. 설치 단계는 다음과 같습니다:
- 프로젝트 다운로드
터미널을 열고 복제 저장소 명령을 입력합니다:
git clone https://github.com/langchain-ai/langgraph-codeact.git
그런 다음 프로젝트 디렉토리로 이동합니다:
cd langgraph-codeact
- 핵심 종속성 설치
다음 명령을 실행하여 기본 종속성을 설치합니다:
pip install langgraph-codeact
예제를 실행하거나 특정 모델(예: Claude 3.7)을 사용해야 하는 경우에도 설치가 필요합니다:
pip install langchain langchain-anthropic
- 환경 변수 구성
클로드 모델을 사용할 때는 다음과 같이 설정해야 합니다. 인류학 API 키를 입력합니다. 터미널에 입력합니다:
export ANTHROPIC_API_KEY="你的密钥"
키는 Anthropic 웹사이트에서 얻을 수 있습니다. 다른 모델을 사용하는 경우 해당 설명서를 참조하여 구성하세요.
기본 사용법
설치가 완료된 후 Python 스크립트에서 LangGraph CodeAct를 호출하는 방법은 다음과 같습니다:
- 인텔리전스 초기화하기
다음과 같은 간단한 스크립트를 만듭니다.run_agent.py
를 클릭하고 다음 코드를 입력합니다:
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())
- 실행 중인 작업
문제를 입력하면 인텔리전스가 코드를 생성하고 실행하도록 합니다. 예시:messages = [{"role": "user", "content": "计算 5 的平方根"}] result = agent.invoke({"messages": messages}) print(result["messages"][-1].content)
결과물은 비슷합니다:
sqrt(5) = 2.23606797749979
.
도구 추가
공식 예제는 지능을 강화하는 수학적 도구를 제공합니다. 추가하는 방법은 다음과 같습니다:
- 정의 도구
스크립트에 수학 함수를 추가합니다: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]
- 통합 도구
초기화 코드를 수정합니다:code_act = create_codeact(model, tools=tools, eval=None) agent = code_act.compile(checkpointer=MemorySaver())
이제 인텔리전스는 다음을 사용할 수 있습니다.
add(3, 4)
어쩌면sqrt(16)
.
사용자 지정 코드 샌드박스
기본 사용 eval
코드를 실행하되 프로덕션 환경을 안전하게 샌드박스화해야 합니다. 샘플 코드:
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}", {}
이 함수를 전달합니다:
code_act = create_codeact(model, tools=tools, eval=custom_sandbox)
주요 기능 작동
- 코드 생성
"3과 5의 합을 계산하세요"라고 입력하면 인텔리전스가 생성됩니다:result = add(3, 5) print(result) # 输出 8
- 역사와의 대화
그런 다음 "결과 더하기 2"를 물어보고 지능적으로 기억하는 법을 배웁니다.result
세대:new_result = result + 2 print(new_result) # 输出 10
- 스트리밍 출력
활용.stream()
단계별 결과 보기:for typ, chunk in agent.stream({"messages": messages}): if typ == "messages": print(chunk[0].content, end="")
주의
- 프로덕션 환경에서는 다음을 직접 사용하지 않습니다.
eval
샌드박스로 보호해야 합니다. - Claude 3.7은 공식 권장 모델이며, 다른 모델은 큐워드에 맞게 조정해야 할 수 있습니다.
- 도구 정의는 명확한 매개변수 유형으로 LangChain 사양을 준수해야 합니다.
이 단계를 통해 LangGraph CodeAct를 사용하여 다양한 작업을 해결할 수 있는 인텔리전스를 구축할 수 있습니다.
애플리케이션 시나리오
- 수학 교육
학생이 '포물선 거리 계산'과 같은 주제를 입력하면 스마트 바디가 코드를 생성하고 결과를 출력하여 학습에 도움을 줍니다. - 데이터 처리
개발자는 이 기능을 사용하여 스크립트를 자동으로 생성하거나 CSV 파일을 처리하거나 통계를 계산할 수 있습니다. - AI 실험
연구원들은 복잡한 작업 프로세스를 최적화하기 위해 인텔리전스의 코드 생성 기능을 테스트합니다.
QA
- 어떤 프로그래밍 언어가 지원되나요?
현재는 기본 실행 언어인 Python만 지원됩니다. - 코드 오류를 디버깅하는 방법은 무엇인가요?
활용.stream()
생성된 코드를 보거나 샌드박스 출력에서 오류 메시지를 확인합니다. - 도구를 사용할 수 없나요?
예, 초기화 시 설정tools=[]
를 사용하여 모델에만 의존하여 코드를 생성합니다.
© 저작권 정책
기사 저작권 AI 공유 서클 모두 무단 복제하지 마세요.
관련 문서
댓글 없음...