다양한 LLM 연결하기
LiteLLM을 사용하여 CrewAI와 다양한 대규모 언어 모델(LLM)을 통합하는 방법을 다룬 포괄적인 가이드. 지원되는 프로바이더와 설정 옵션을 포함한다.
CrewAI와 LLM 연결하기
CrewAI는 LiteLLM을 사용해 다양한 언어 모델(LLM)에 연결한다. 이 통합은 광범위한 유연성을 제공하며, 여러 프로바이더의 모델을 간단하고 통일된 인터페이스로 사용할 수 있게 한다.
기본적으로 CrewAI는 gpt-4o-mini
모델을 사용한다. 이는 OPENAI_MODEL_NAME
환경 변수에 의해 결정되며, 설정되지 않은 경우 기본값은 “gpt-4o-mini”이다.
이 가이드에서 설명하는 대로 에이전트가 다른 모델이나 프로바이더를 사용하도록 쉽게 설정할 수 있다.
지원하는 프로바이더
LiteLLM은 다양한 프로바이더를 지원한다. 주요 프로바이더는 다음과 같다:
- OpenAI
- Anthropic
- Google (Vertex AI, Gemini)
- Azure OpenAI
- AWS (Bedrock, SageMaker)
- Cohere
- VoyageAI
- Hugging Face
- Ollama
- Mistral AI
- Replicate
- Together AI
- AI21
- Cloudflare Workers AI
- DeepInfra
- Groq
- SambaNova
- NVIDIA NIMs
- 그리고 더 많은 프로바이더!
지원하는 프로바이더의 최신 목록은 LiteLLM 프로바이더 문서를 참조한다.
LLM 교체하기
CrewAI 에이전트에서 다른 LLM을 사용하려면 여러 가지 방법이 있다:
에이전트를 초기화할 때 모델 이름을 문자열로 전달한다:
설정 옵션
에이전트를 위해 LLM을 설정할 때 다양한 파라미터를 사용할 수 있다:
파라미터 | 타입 | 설명 |
---|---|---|
model | str | 사용할 모델 이름 (예: “gpt-4”, “claude-2”) |
temperature | float | 출력의 무작위성을 조절 (0.0에서 1.0 사이) |
max_tokens | int | 생성할 최대 토큰 수 |
top_p | float | 출력의 다양성을 조절 (0.0에서 1.0 사이) |
frequency_penalty | float | 지금까지 텍스트에서 토큰의 빈도에 따라 새로운 토큰에 패널티를 부여 |
presence_penalty | float | 지금까지 텍스트에서 토큰의 존재 여부에 따라 새로운 토큰에 패널티를 부여 |
stop | str , List[str] | 생성을 멈출 시퀀스 |
base_url | str | API 엔드포인트의 기본 URL |
api_key | str | 인증을 위한 API 키 |
전체 파라미터 목록과 설명은 LLM 클래스 문서를 참고한다.
OpenAI 호환 LLM 연결하기
환경 변수를 사용하거나 LLM 클래스의 특정 속성을 설정하여 OpenAI 호환 LLM에 연결할 수 있다:
Ollama를 사용한 로컬 모델 활용
Ollama와 같은 로컬 모델을 사용하려면 다음 단계를 따라야 한다:
Ollama 다운로드 및 설치
원하는 모델 가져오기
예를 들어, ollama pull llama3.2
명령어를 실행해 모델을 다운로드한다.
에이전트 설정
기본 API URL 변경하기
LLM 프로바이더의 기본 API URL을 변경하려면 base_url
파라미터를 설정한다:
이 방법은 OpenAI 호환 API를 사용하거나 특정 프로바이더의 다른 엔드포인트를 지정해야 할 때 특히 유용하다.
결론
CrewAI는 LiteLLM을 활용해 다양한 LLM(대형 언어 모델)과 원활하게 통합한다. 이 유연성 덕분에 성능, 비용 효율성, 로컬 배포 등 특정 요구사항에 가장 적합한 모델을 선택할 수 있다. 지원되는 모델과 설정 옵션에 대한 최신 정보를 확인하려면 LiteLLM 문서를 참고한다.