안녕하세요?
오늘은 LiteLLM을 사용해서 OpenAI format의 커스텀 LLM Agent를 만들어 보겠습니다.
LiteLLM?
LiteLLM은 이미 존재하는 100+ 이상의 LLM들에 대한 Client 패키지와 Proxy를 지원해주는 패키지 입니다.
LiteLLM을 사용하게 되면 쉽게 다양한 LLM들을 사용할 수 있습니다. 저는 UI에서 다양한 LLM 이외에도, 자체적으로 개발한 Custom LLM을 연결하는 Proxy 기능으로 활용을 하게 됐습니다.
Custom OpenAI Proxy
LiteLLM에서는 아래 나오는 것 처럼 Custom Agent에서 Open AI format으로 Response 형식만 맞춰주면, LIteLLM 패키지를 클라이언트로 사용할 수 있습니다.
https://litellm.vercel.app/docs/providers/custom_openai_proxy
뿐만 아니라, LiteLLM Proxy를 활용하게 되면 다양한 LLM을 Proxy 하거나, Custom Agent로도 Proxy를 하도록 설정할 수 있습니다.
https://litellm.vercel.app/docs/proxy/configs
Custom Agent의 경우에는, 아래 처럼 추가하여 사용할 수 있습니다.
아래 주소는 example endpoint 입니다.
- litellm_params:
api_base: https://exampleopenaiendpoint-production.up.railway.app/
api_key: fake-key
model: openai/fake
model_name: fake-openai-endpoint
또한, 분당 리퀘스트를 제한할 수도 있으니 필요에 따라 설정을 하면 됩니다.
Proxy UI는 현재 베타버전이네요..
* LiteLLM Proxy는 Python 3.9 이상에서만 동작이 됩니다. 오늘(24. 4 17) 기준으로 Python require 가 3.8>= 로 잘 못 되어 있어서 이 점 참고 부탁 드립니다.
'개발 > ETC' 카테고리의 다른 글
[Protobuf] symbol not found in flat namespace '_CFRelease' (0) | 2024.02.05 |
---|---|
Budibase - No Code Platform (0) | 2024.01.30 |