Przejdź do głównej treści
Provider CometAPI dla AI SDK daje dostęp do ponad 500 modeli AI przez ujednolicony interfejs TypeScript. Użyj go, aby dodać generowanie tekstu, Streaming, Embeddings i generowanie obrazów do dowolnej aplikacji działającej w środowisku Node.js lub Edge runtime.

Obsługiwane funkcje

FunkcjaMetodaStatus
Generowanie tekstugenerateText()Obsługiwane
Streaming tekstustreamText()Obsługiwane
Embeddings tekstutextEmbeddingModel()Obsługiwane
Generowanie obrazówimageModel()Obsługiwane

Wymagania wstępne

1

Zainstaluj provider

Zainstaluj @cometapi/ai-sdk-provider wraz z głównym pakietem AI SDK:
npm install @cometapi/ai-sdk-provider ai
2

Ustaw klucz API

Provider domyślnie odczytuje zmienną środowiskową COMETAPI_KEY:
export COMETAPI_KEY=<COMETAPI_KEY>
Używaj zmiennych środowiskowych, aby uniknąć umieszczania poświadczeń na stałe w kodzie źródłowym.
3

Zaimportuj provider

Zaimportuj domyślną instancję providera:
import { cometapi } from '@cometapi/ai-sdk-provider';
Aby nadpisać klucz API, bazowy URL lub inne ustawienia, użyj createCometAPI:
import { createCometAPI } from '@cometapi/ai-sdk-provider';

const cometapi = createCometAPI({
  apiKey: '<COMETAPI_KEY>',       // override env variable
  baseURL: 'https://api.cometapi.com/v1',  // default
});

Użycie

Generowanie tekstu

Użyj generateText() do uzyskania pojedynczej odpowiedzi:
import { cometapi } from '@cometapi/ai-sdk-provider';
import { generateText } from 'ai';

const { text } = await generateText({
  model: cometapi('your-model-id'),
  prompt: 'What is CometAPI?',
});

console.log(text);

Streaming tekstu

Użyj streamText() do otrzymywania wyniku w czasie rzeczywistym, fragment po fragmencie:
import { cometapi } from '@cometapi/ai-sdk-provider';
import { streamText } from 'ai';

const result = streamText({
  model: cometapi('your-model-id'),
  prompt: 'Write a short story about AI.',
});

for await (const chunk of result.textStream) {
  process.stdout.write(chunk);
}

Generowanie embeddings

Użyj textEmbeddingModel() do tworzenia embeddings wektorowych:
import { cometapi } from '@cometapi/ai-sdk-provider';

const model = cometapi.textEmbeddingModel('text-embedding-3-small');

// Single embedding
const single = await model.doEmbed({ values: ['Hello, world!'] });
console.log('Dimensions:', single.embeddings[0].length);

// Batch embeddings
const batch = await model.doEmbed({
  values: ['sunny day', 'rainy afternoon', 'cold winter night'],
});
console.log('Count:', batch.embeddings.length);

Generowanie obrazów

Użyj imageModel() do generowania obrazów na podstawie promptów tekstowych:
import { cometapi } from '@cometapi/ai-sdk-provider';
import { experimental_generateImage as generateImage } from 'ai';

const { image } = await generateImage({
  model: cometapi.imageModel('your-model-id'),
  prompt: 'A beautiful sunset over mountains',
});

Konfiguracja providera

createCometAPI przyjmuje następujące opcje:
OpcjaTypDomyślnieOpis
apiKeystringprocess.env.COMETAPI_KEYKlucz API CometAPI
baseURLstringhttps://api.cometapi.com/v1Bazowy URL API
headersRecord<string, string>Niestandardowe nagłówki żądań
fetchFetchFunctionNiestandardowa implementacja fetch

Metody modeli

Provider udostępnia kilka konstruktorów modeli:
MetodaZwracaZastosowanie
cometapi(modelId)LanguageModelV2Generowanie tekstu i Streaming (skrócona forma)
cometapi.chatModel(modelId)LanguageModelV2Chat completions
cometapi.completionModel(modelId)LanguageModelV2Uzupełnianie tekstu
cometapi.languageModel(modelId)LanguageModelV2Alias dla chatModel
cometapi.textEmbeddingModel(modelId)EmbeddingModelV2Embeddings tekstu
cometapi.imageModel(modelId)ImageModelV2Generowanie obrazów
Pełną listę dostępnych model IDs znajdziesz na stronie Models.
  • Wybór modelu: Każdy model z katalogu modeli CometAPI działa z odpowiadającą mu metodą modelu — modele chat przez cometapi(), modele embedding przez textEmbeddingModel(), modele obrazów przez imageModel().
  • Dostrajanie odpowiedzi: Przekaż temperature, maxTokens i topP bezpośrednio do generateText() lub streamText(), np. generateText(\{..., temperature: 0.7\}).
  • Obsługa błędów: Opakuj wywołania w try/catch, aby obsługiwać błędy uwierzytelniania, limity szybkości lub problemy z siecią.
  • Bezpieczeństwo: Nigdy nie zapisuj kluczy API w systemie kontroli wersji. Używaj zmiennych środowiskowych lub menedżera sekretów.
  • Limity szybkości: Monitoruj użycie w konsoli CometAPI.

Powiązane zasoby