W ciągu ostatnich kilku miesięcy krajobraz sztucznej inteligencji dynamicznie się zmienił: OpenAI udostępnił programistom GPT-5 i odświeżył swój stos czasu rzeczywistego; Anthropic zaktualizował Claude i swoje zasady dotyczące wykorzystania danych; a Google wdrożył Gemini głębiej w ekosystem urządzeń domowych i inteligentnych. Te zmiany mają znaczenie, ponieważ zmieniają modele, do których chcesz dotrzeć, i sposób ich monitorowania – dokładnie tam, gdzie połączenie „ujednoliconego API + możliwości obserwacji”, takie jak LiteLLM + CometAPI świeci.
W tym przewodniku znajdziesz praktyczny, pełen kodu przewodnik po integracji LiteLLM w Interfejs API Comet (który mówi Zgodny z OpenAI dialekt), obejmujący instalację, podstawowe wywołania, asynchroniczność i strumieniowanie oraz wskazówki dotyczące wdrażania. Po drodze omówimy wpływ najnowszych aktualizacji modelu na Twoje wybory dotyczące integracji.
Czym jest LiteLLM?
LiteLLM to pakiet SDK Pythona o otwartym kodzie źródłowym i serwer proxy (brama LLM), który udostępnia jedno, spójne API dla wielu dostawców modeli (OpenAI, Anthropic, Vertex/Google, AWS Bedrock, Hugging Face itp.). Normalizuje różnice między dostawcami (format wejściowy, błędy, kształty wyjściowe), zapewnia logikę ponawiania/rezerwowania/routingu oraz obsługuje lekki pakiet SDK. oraz Serwer proxy do centralnego routingu LLM w stosach infrastruktury. Innymi słowy: jedno API do wywoływania wielu modeli.
Cecha:
- Zunifikowane funkcje Pythona, takie jak
completion,responses,embeddings. - Trasowanie zgodne z OpenAI (dzięki czemu klienci posługujący się interfejsami API w stylu OpenAI mogą zostać skierowani do innych dostawców).
- Obsługa asynchronicznego i strumieniowego przesyłania danych (asynchroniczne wrappery, takie jak
acompletion,stream=True(dla odpowiedzi podzielonych na części).
Jak mapują się modele i punkty końcowe LiteLLM
- Zastosowanie
completion()(synchronizacja) iacompletion()(async) w pakiecie Python SDK do wywołań w stylu czatu/uzupełniania. - W przypadku punktów końcowych zgodnych z OpenAI, LiteLLM obsługuje
api_base/api_keynadpisz, aby zestaw SDK wiedział, że ma trafić na ścieżkę w stylu OpenAI.
Czym jest CometAPI?
Interfejs API Comet jest usługą „jednego API dla wielu modeli”, która udostępnia setki modeli (w tym OpenAI GPT-5, Anthropic Claude, xAI Grok, Qwen, GLM i generatory obrazu/wideo) poprzez Zgodny z OpenAI Interfejs REST. Ze względu na kompatybilność zazwyczaj można wskazać klienta OpenAI na interfejs CometAPI. base_url i zachować ten sam schemat żądania/odpowiedzi, co czyni go alternatywą lub uzupełnieniem interfejsów API pierwszej strony.
Wskazówka: Taka zgodność jest dokładnie tym, czego oczekuje LiteLLM. Możesz odwoływać się do modeli CometAPI za pośrednictwem LiteLLM, korzystając z wywołań w stylu OpenAI, lub kierować je przez serwer proxy LiteLLM za pomocą
base_urlnadpisuje.
Wymagania wstępne integracji LiteLLM z CometAPI
Zanim połączysz LiteLLM z CometAPI, musisz zadbać o kilka rzeczy:
Środowisko Pythona
- Python 3.8+ (zalecane: środowisko wirtualne za pośrednictwem
venvorconda). pipulepszono:python -m pip install --upgrade pip
LiteLLM zainstalowany pip install litellm (Opcjonalnie: zainstaluj litellm jeśli chcesz uruchomić serwer proxy LiteLLM.)
Konto CometAPI i klucz API
- Zarejestruj się na stronie pl.com.
- Weź swój Klucz API z poziomu pulpitu nawigacyjnego.
- Zapisz jako zmienną środowiskową:
export COMETAPI_KEY="sk-xxxx"
Podstawowa wiedza na temat interfejsów API zgodnych ze standardem OpenAI
- CometAPI ujawnia Punkty końcowe w stylu OpenAI lubić
/v1/chat/completions. - LiteLLM obsługuje ten format natywnie, więc nie jest potrzebny żaden niestandardowy klient.
Jak wykonać podstawowe wywołanie uzupełniania (używając LiteLLM → CometAPI)?
Użyj funkcji uzupełniania LiteLLM, aby wysyłać wiadomości do modelu CometAPI. Możesz określić modele takie jak cometapi/gpt-5 lub cometapi/gpt-4o.
Metoda 1: Użyj zmiennej środowiskowej dla klucza API (zalecane).
from litellm import completion
import os
# Option A: use env var
os.environ = "sk_xxx" # CometAPI key
# Direct call with explicit api_base + api_key
resp = completion(
model="cometapi/gpt-5",
api_key=os.environ,
api_base="https://www.cometapi.com/console/", # CometAPI base URL
messages=[
{"role":"system", "content":"You are a concise assistant."},
{"role":"user", "content":"Explain why model-aggregation is useful in 3 bullets."}
],
max_tokens=200,
temperature=0.2
)
print(resp.choices.message)
Jeśli wolisz, możesz również ustawić OPENAI_API_KEY/OPENAI_API_BASE — LiteLLM akceptuje kilka konwencji dostawców; sprawdź wersję dokumentacji SDK, z której korzystasz.
Metoda 2: Przekaż klucz API jawnie:
Przykład:
from litellm import completion
import os
# Define your messages (array of dictionaries with 'content' and 'role')
messages =
api_key = 'your-cometapi-key-here' # Alternative: Store it in a variable for explicit passing
# CometAPI call - Method 2: Explicitly passing API key
response_2 = completion(model="cometapi/gpt-4o", messages=messages, api_key=api_key)
# Print the responses
print(response_2.choices.message.content)
Jak działają asynchroniczne i strumieniowe połączenia między LiteLLM → CometAPI?
Połączenia asynchroniczne
- Znaczenie:Wywołanie asynchroniczne ma miejsce, gdy wysyłane jest żądanie wykonania jakiejś czynności (np. pobrania danych lub uruchomienia zadania), ale zamiast czekać na jej zakończenie przed przejściem dalej, program kontynuuje wykonywanie innego kodu.
- Kluczowy pomysł:„Nie blokuj, pracuj dalej, czekając.”
- Przykład:
- W aplikacjach internetowych: pobieranie danych z interfejsu API bez zawieszania się interfejsu użytkownika.
- W Pythonie: używając
async/awaitwasyncio. - W JavaScript: używając
Promisesorasync/await.
Przypadek użycia:Poprawia wydajność i responsywność, ponieważ nie blokuje wątku głównego.
Połączenia strumieniowe
- Znaczenie:Wywołanie strumieniowe oznacza, że zamiast czekać, aż wszystkie dane będą gotowe i wysłać je za jednym razem, serwer wysyła fragmenty danych, gdy tylko staną się dostępne.
- Kluczowy pomysł:„Wysyłaj dane kawałek po kawałku w trakcie ich wytwarzania”.
- Przykład:
- Oglądanie filmu w serwisie YouTube przed pobraniem całego pliku wideo.
- Aplikacje do czatów w czasie rzeczywistym lub aktualizacje notowań giełdowych.
- W interfejsach API: zamiast czekać na pełne dane wyjściowe modelu, klient otrzymuje słowa/tokeny progresywnie (podobnie jak ChatGPT przesyła strumieniowo tekst).
An asynchroniczne połączenie strumieniowe Zarówno LiteLLM, jak i CometAPI obsługują strumieniowanie i asynchroniczne użycie. LiteLLM udostępnia stream=True aby otrzymać iterator fragmentów i acompletion() Do użytku asynchronicznego. Użyj strumieniowania, gdy potrzebujesz częściowych wyników o niskim opóźnieniu (interaktywność interfejsu użytkownika, przetwarzanie token po tokenie). W takim przypadku żądanie jest generowane bez blokowania, a wyniki są dostarczane progresywnie, w miarę ich przygotowania. W przypadku aplikacji nieblokujących lub działających w czasie rzeczywistym, użyj funkcji uzupełniania LiteLLM do wywołań asynchronicznych. Jest to przydatne w połączeniu z funkcją asyncio języka Python do obsługi współbieżności.
Przykład:
from litellm import acompletion
import asyncio, os, traceback
async def completion_call():
try:
print("Testing asynchronous completion with streaming")
response = await acompletion(
model="cometapi/chatgpt-4o-latest",
messages=,
stream=True # Enable streaming for chunked responses
)
print(f"Response object: {response}")
# Iterate over the streamed chunks asynchronously
async for chunk in response:
print(chunk)
except Exception:
print(f"Error occurred: {traceback.format_exc()}")
pass
# Run the async function
await completion_call()
Wyjaśnienie:
acompletionjest asynchroniczną wersjącompletion.stream=Trueumożliwia przesyłanie strumieniowe, w którym odpowiedź jest dostarczana w blokach w czasie rzeczywistym.- Zastosowanie
asyncioaby uruchomić funkcję (np. w notatniku Jupyter za pomocąawaitlub za pośrednictwemasyncio.run()w skryptach). - Jeśli wystąpi błąd, jest on wychwycony i wyświetlany w celu debugowania.
Oczekiwany wynik:Zobaczysz wydrukowany obiekt odpowiedzi i poszczególne fragmenty, np.:
Testing asynchronous completion with streaming
Response object: <async_generator object acompletion at 0x...>
Chunk: {'choices': }
Chunk: {'choices': }
... (full response streamed in parts)
Dodatkowe wskazówki
- Nie znaleziono modelu / niezgodność punktu końcowego: upewnij się, że wybierzesz nazwę modelu, która istnieje w CometAPI (ich dokumentacja zawiera listę dostępnych identyfikatorów) i że konwencje prefiksów modelu LiteLLM są zgodne (np.
cometapi/<model>Modele CometAPI mają format cometapi/, np. cometapi/gpt-5, cometapi/gpt-4o, cometapi/chatgpt-4o-latest. Sprawdź dokumentację CometAPI, aby poznać najnowsze modele. - Obsługa błędów: Zawsze umieszczaj wywołania w blokach try-except, aby poradzić sobie z problemami, takimi jak nieprawidłowe klucze lub błędy sieciowe.
- Funkcje zaawansowane: LiteLLM obsługuje parametry takie jak temperatura, max_tokens i top_p do precyzyjnego dostrajania odpowiedzi. Dodaj je do wywołań funkcji uzupełniania lub uzupełniania, np. completion(…, temperature=0.7).
- 403 / błędy uwierzytelniania — upewnij się, że używasz właściwego klucza CometAPI i wysyłasz go jako
api_keydo LiteLLM
Podsumowanie
Integracja LiteLLM z CometAPI jest bezproblemowy, ponieważ obie strony korzystają z dobrze udokumentowanych interfejsów zgodnych z OpenAI. Użyj LiteLLM, aby scentralizować użycie LLM w swojej bazie kodu, ustaw api_base do CometAPI i przekaż klucz CometAPI, a następnie wykorzystaj pomocnicze funkcje synchronizacji/asynchronizacji/przesyłania strumieniowego LiteLLM, aby tworzyć responsywne i elastyczne aplikacje.
Jak zacząć
CometAPI to ujednolicona platforma API, która agreguje ponad 500 modeli AI od wiodących dostawców — takich jak seria GPT firmy OpenAI, Gemini firmy Google, Claude firmy Anthropic, Midjourney, Suno i innych — w jednym, przyjaznym dla programistów interfejsie. Oferując spójne uwierzytelnianie, formatowanie żądań i obsługę odpowiedzi, CometAPI radykalnie upraszcza integrację możliwości AI z aplikacjami. Niezależnie od tego, czy tworzysz chatboty, generatory obrazów, kompozytorów muzycznych czy oparte na danych potoki analityczne, CometAPI pozwala Ci szybciej iterować, kontrolować koszty i pozostać niezależnym od dostawcy — wszystko to przy jednoczesnym korzystaniu z najnowszych przełomów w ekosystemie AI.
Na początek zapoznaj się z możliwościami modelu w Plac zabaw i zapoznaj się z Przewodnik integracji LiteLLM aby uzyskać szczegółowe instrukcje. Przed uzyskaniem dostępu upewnij się, że zalogowałeś się do CometAPI i uzyskałeś klucz API. Interfejs API Comet zaoferuj cenę znacznie niższą niż oficjalna, aby ułatwić Ci integrację.
