ComposioToolSet
Composio는 여러분의 AI 어시스턴트를 250개 이상의 도구와 연결할 수 있는 통합 플랫폼이다. 주요 기능은 다음과 같다:
- 엔터프라이즈급 인증: OAuth, API 키, JWT 지원과 자동 토큰 갱신 기능을 내장
- 완벽한 가시성: 도구 사용 로그, 실행 시간 기록 등 상세한 정보 제공
Composio 도구를 프로젝트에 통합하려면 아래 지침을 따르세요:
pip install composio-crewai
pip install crewai
설치가 완료되면 composio login
명령을 실행하거나 Composio API 키를 COMPOSIO_API_KEY
로 내보내세요. Composio API 키는 여기에서 얻을 수 있습니다.
다음 예제는 도구를 초기화하고 GitHub 액션을 실행하는 방법을 보여준다:
- Composio 도구셋 초기화
from composio_crewai import ComposioToolSet, App, Action
from crewai import Agent, Task, Crew
toolset = ComposioToolSet()
- GitHub 계정 연결
- 도구 가져오기
- 앱에서 모든 도구를 가져오기 (프로덕션 환경에서는 권장하지 않음):
tools = toolset.get_tools(apps=[App.GITHUB])
tag = "users"
filtered_action_enums = toolset.find_actions_by_tags(
App.GITHUB,
tags=[tag],
)
tools = toolset.get_tools(actions=filtered_action_enums)
use_case = "Star a repository on GitHub"
filtered_action_enums = toolset.find_actions_by_use_case(
App.GITHUB, use_case=use_case, advanced=False
)
tools = toolset.get_tools(actions=filtered_action_enums)
복잡한 사용 사례에 대한 액션을 가져오려면 advanced
를 True로 설정하세요
이 데모에서는 GitHub 앱의 GITHUB_STAR_A_REPOSITORY_FOR_THE_AUTHENTICATED_USER
액션을 사용한다.
tools = toolset.get_tools(
actions=[Action.GITHUB_STAR_A_REPOSITORY_FOR_THE_AUTHENTICATED_USER]
)
액션 필터링에 대해 더 알아보려면 여기를 참조하세요.
- 에이전트 정의
crewai_agent = Agent(
role="GitHub 에이전트",
goal="GitHub API를 사용해 GitHub에서 액션을 수행한다",
backstory="사용자를 대신해 GitHub API를 사용해 GitHub에서 액션을 수행하는 AI 에이전트이다",
verbose=True,
tools=tools,
llm= # LLM을 전달하세요
)
- 태스크 실행
task = Task(
description="GitHub에서 composiohq/composio 저장소를 스타한다",
agent=crewai_agent,
expected_output="작업 상태",
)
crew = Crew(agents=[crewai_agent], tasks=[task])
crew.kickoff()
- 더 상세한 도구 목록은 여기에서 확인할 수 있다.