V tej objavi vam bomo povedali, kako namestiti LiteLLM in združiti več API-jev umetne inteligence v enega. To je še posebej uporabno, če delate z več jezikovnimi modeli (LLM) in potrebujete uvesti bolj centraliziran in organiziran sistem upravljanjaLiteLLM je ena najboljših alternativ za uporabo enega samega API-ja, združljivega z OpenAI, ki omogoča dostop do več ponudnikov.
Namestite LiteLLM: en sam API za dostop do več ponudnikov umetne inteligence

Imate en projekt, ki uporablja OpenAI, drugega s Claudom, še enega z Geminijem in še enega, ki se izvaja lokalno z Ollamo? Potem veste, kako težko je to lahko. upravljajte več API-jev, različnih SDK-jev in različnih načinov povezave med ponudnikiRešitev? Namestitev LiteLLM in združitev več API-jev umetne inteligence v enega lahko konča kaos in vam povrne nadzor.
Tako kot OpenRouter si tudi LiteLLM prizadeva rešiti isti temeljni problem: ponuditi en sam API, združljiv z OpenAI, za dostop do več ponudnikov modelov umetne inteligenceOba kažeta končna točka Združljivi so z OpenAI, omogočajo dostop do številnih modelov in ponudnikov ter med drugim omogočajo nadzor nad stroški.
In kako se razlikujeta? Predvsem, v modelu uvajanjaČeprav je OpenRouter končna točka Za razliko od oddaljenega strežnika, s katerim se povežete neposredno, LiteLLM deluje na vašem računalniku ali strežniku (prek Dockerja ali Pythona). Zaradi tega je LiteLLM prednostna izbira za tiste, ki morajo izpolnjevati stroge zahteve glede lokacije podatkov ali zasebnosti.
Zanimivo je to Številne ekipe združujejo obe orodjiUporabljajo LiteLLM kot prehod interno in konfigurirajo OpenRouter kot le še enega ponudnika v ozadju. To jim daje popoln nadzor nad njihovim končna točka medtem ko izkoriščate katalog OpenRouter iz zaledni del (Glej vnos) Kako ustvariti in konfigurirati račun OpenRouterKljub temu si poglejmo, kako namestiti LiteLLM in združiti več API-jev umetne inteligence v enega.
Kako namestiti LiteLLM in združiti več API-jev umetne inteligence v enega

LiteLLM Ponuja dva načina uporabeNamestite ga lahko kot osnovni Python SDK z uporabo pip install litellmali pa ga namestite kot posredniški strežnik (za ekipe in produkcijo). Če želite namestiti LiteLLM in združiti več API-jev umetne inteligence v enega, potrebujete posredniški strežnik, saj razkriva končna točka Centraliziran HTTP, kjer konfigurirate vse svoje modele. Zato se bomo osredotočili na slednjega.
La učinkovitejši način Če želite LiteLLM zagnati kot proxy strežnik, ga namestite v vsebnik Docker. To zagotavlja, da deluje kot samostojna storitev v ozadju vašega računalnika ali strežnika. Poleg tega vam Docker omogoča orkestriranje kompleksnega usmerjanja, omejitev porabe na napravo in rotacije ključev znotraj ene same datoteke YAML.
Prvi korak pri namestitvi LiteLLM in združevanju več API-jev umetne inteligence v enega je ustvarite strukturo projektaČe želite to narediti, odprite terminal in ustvarite namensko mapo za konfiguracijo proxyja tako, da zaženete naslednji ukaz mkdir litellm-proxy && cd litellm-proxyKo je to storjeno, lahko nadaljujete s konfiguriranjem datoteke modela YAML, ki je osrednja točka za poenotenje.
Konfiguracija datoteke YAML modela
Nato moramo Konfigurirajte datoteko YAML, da določite, katere jezikovne modele želite izpostaviti in kako se z njimi povezati.Seveda potrebujete API ključe za vsakega od njih: vse jih bomo združili v eno samo konfiguracijo. Potrebujete tudi natančno ime vsakega modela.
Poleg seznama modelov mora datoteka YAML določiti tudi, kateri modeli bodo služili kot rezervne kopije v primeru, da primarni model odpove. Za ogled teh podrobnosti natančno preglejte naslednjo strukturo. V naslednji datoteki bomo poenotili Komercialni ponudniki (OpenAI, Anthropic, Gemini), storitve, kot je OpenRouter, in lokalni modeli, ki delujejo na Ollami. Struktura datoteke YAML bi bila videti takole:
model_list: # Poslovni model 1: OpenAI - model_name: gpt-4o litellm_params: model: gpt-4o api_key: os.environ/OPENAI_API_KEY # Poslovni model 2: Anthropic Claude - model_name: claude-3-5-sonnet litellm_params: model: claude-3-5-sonnet-20240620 api_key: os.environ/ANTHROPIC_API_KEY # Zunanji agregator: OpenRouter - model_name: openrouter-llama litellm_params: model: openrouter/meta-llama/llama-3.1-70b-instruct api_key: os.environ/OPENROUTER_API_KEY # Lokalni model: Ollama - model_name: llama3-local litellm_params: model: llama/llama3 api_base: http://host.docker.internal:11434 nastavitve_routerja: število_poskusov: 3 časovna omejitev: 15 rezervne možnosti: - gpt-4o: ["claude-3-5-sonnet", "openrouter-llama"]
Definirajte spremenljivke okolja in namestite vsebnik LiteLLM
Nato morate v istem imeniku ustvariti datoteko .env, v katero boste shranili zasebne ključe API-ja, ne da bi jih razkrili v kodi. Opazili boste, da ključi v prejšnji datoteki confi.yaml niso označeni, da bi se izognili razkritju. Zato jih je treba vse zbrati v eni sami datoteki. Datoteka .env kot naslednje:
OPENAI_API_KEY=sk-proj-vaš-ključ-tukaj ANTHROPIC_API_KEY=sk-ant-vaš-ključ-tukaj OPENROUTER_API_KEY=sk-or-vaš-ključ-tukaj LITELLM_MASTER_KEY=sk-moj-glavni-proxy-ključ
In to je to! Takole namestite LiteLLM in združite več API-jev umetne inteligence v enega. Kar je še treba storiti, je Zaženite uradni vsebnik LiteLLM in ga povežite z zgornjimi konfiguracijskimi in okoljskimi spremenljivkami.To lahko storite tako, da zaženete naslednji ukaz:
docker run -d \ --name litellm-proxy \ -p 4000:4000 \ --env-file .env \ -v $(geslo)/config.yaml:/app/config.yaml \ ghcr.io/berriai/litellm:main-latest \ --config /app/config.yaml --port 4000
Preverjanje in testiranje prehod enoten

Na koncu bomo preverili, ali je bil postopek namestitve LiteLLM in združitve več API-jev umetne inteligence v enega uspešen. Če je vse potekalo v redu in vsebnik že deluje, LiteLLM bo prisluhnil http://localhost:4000Od te točke naprej bo lahko vsaka komercialna aplikacija ali skript, združljiv z OpenAI API, uporabljala vaš posrednik iz LiteLLM.
Bi radi poskusili? Poskusite poslati Zahteva HTTP z uporabo glavnega ključa, definiranega v vaši datoteki .env. Izgledalo bi nekako takole:
curl --location 'http://localhost:4000/v1/chat/completions' \ --header 'Avtorizacija: Nosilec sk-my-master-key-proxy' \ --header 'Vrsta vsebine: application/json' \ --data '{ "model": "gpt-4o", "messages": [ {"role": "uporabnik", "content": "Ustvari seznam 3 najboljših praks za mikroservis."} ] }'
LiteLLM: en sam API za nadzor vseh

Kot lahko vidite, je namestitev LiteLLM in združevanje več API-jev umetne inteligence v enega preprost in resnično uporaben postopek. LiteLLM, nameščen kot proxy z Dockerjem, vam ponuja ena sama, uporabniško nadzorovana dostopna točka za vse vaše API-je umetne inteligenceZa razliko od OpenRouterja (ki je upravljana storitev SaaS) vam LiteLLM daje popoln nadzor nad vašimi podatki in stroški. Vendar pa morate v zameno vzdrževati lastno infrastrukturo.
Namestitev z Dockerjem je priporočena pot za ekipe. Centraliziran prehod lahko imate v nekaj minutah Kjer se združijo OpenAI, Anthropic, Gemini, lokalni modeli in celo OpenRouter, vsi izpostavljeni pod eno samo končno točko, združljivo z OpenAI. Poskusite: centralizirajte svoje ključe in modele z LiteLLM. Vaša koda in vaša razumnost se vam bosta zahvalila.
Že od malih nog me je fasciniralo vse, kar je povezano z znanostjo in tehnologijo, še posebej tisti napredek, ki nam olajša in popestri življenje. Rad spremljam najnovejše novice in trende ter delim svoje izkušnje, mnenja in nasvete o napravah in pripomočkih, ki jih uporabljam. To me je pred dobrimi petimi leti pripeljalo do tega, da sem postal spletni pisec, ki se osredotoča predvsem na naprave Android in operacijske sisteme Windows. Naučil sem se razlagati kompleksne koncepte s preprostimi izrazi, da jih moji bralci zlahka razumejo.

