Naar hoofdinhoud gaan
De CometAPI provider voor de AI SDK geeft je toegang tot meer dan 500 AI-modellen via een uniforme TypeScript-interface. Gebruik deze om tekstgeneratie, streaming, embeddings en afbeeldingsgeneratie toe te voegen aan elke Node.js- of Edge runtime-applicatie.

Ondersteunde functies

FunctieMethodeStatus
TekstgeneratiegenerateText()Ondersteund
TekststreamingstreamText()Ondersteund
TekstembeddingstextEmbeddingModel()Ondersteund
AfbeeldingsgeneratieimageModel()Ondersteund

Vereisten

  • Node.js 18+
  • Een CometAPI-account met een actieve API-sleutel — haal die hier op
1

Installeer de provider

Installeer @cometapi/ai-sdk-provider samen met het AI SDK core-pakket:
npm install @cometapi/ai-sdk-provider ai
2

Stel je API-sleutel in

De provider leest standaard de omgevingsvariabele COMETAPI_KEY:
export COMETAPI_KEY=<COMETAPI_KEY>
Gebruik omgevingsvariabelen om te voorkomen dat credentials hardcoded in je broncode terechtkomen.
3

Importeer de provider

Importeer de standaard provider-instantie:
import { cometapi } from '@cometapi/ai-sdk-provider';
Gebruik createCometAPI om de API-sleutel, basis-URL of andere instellingen te overschrijven:
import { createCometAPI } from '@cometapi/ai-sdk-provider';

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

Gebruik

Genereer tekst

Gebruik generateText() voor een eenmalige response:
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);

Stream tekst

Gebruik streamText() voor realtime output in chunks:
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);
}

Genereer embeddings

Gebruik textEmbeddingModel() om vector-embeddings te maken:
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);

Genereer afbeeldingen

Gebruik imageModel() om afbeeldingen te genereren op basis van tekstprompts:
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',
});

Providerconfiguratie

createCometAPI accepteert de volgende opties:
OptieTypeStandaardBeschrijving
apiKeystringprocess.env.COMETAPI_KEYCometAPI API-sleutel
baseURLstringhttps://api.cometapi.com/v1API-basis-URL
headersRecord<string, string>Aangepaste requestheaders
fetchFetchFunctionAangepaste fetch-implementatie

Modelmethoden

De provider stelt verschillende modelconstructors beschikbaar:
MethodeRetourneertToepassing
cometapi(modelId)LanguageModelV2Tekstgeneratie en streaming (verkorte notatie)
cometapi.chatModel(modelId)LanguageModelV2Chat completions
cometapi.completionModel(modelId)LanguageModelV2Text completions
cometapi.languageModel(modelId)LanguageModelV2Alias voor chatModel
cometapi.textEmbeddingModel(modelId)EmbeddingModelV2Tekstembeddings
cometapi.imageModel(modelId)ImageModelV2Afbeeldingsgeneratie
Bekijk de volledige lijst met beschikbare model IDs op de Models-pagina.
  • Modelselectie: Elk model uit de CometAPI modelcatalogus werkt met de bijbehorende modelmethode — chatmodellen via cometapi(), embeddingmodellen via textEmbeddingModel(), afbeeldingsmodellen via imageModel().
  • Responses finetunen: Geef temperature, maxTokens en topP rechtstreeks door aan generateText() of streamText(), bijvoorbeeld generateText(\{..., temperature: 0.7\}).
  • Foutafhandeling: Verpak aanroepen in try/catch om authenticatiefouten, rate limits of netwerkproblemen af te handelen.
  • Beveiliging: Commit API-sleutels nooit naar versiebeheer. Gebruik omgevingsvariabelen of een secrets manager.
  • Rate limits: Controleer je gebruik in de CometAPI console.

Gerelateerde bronnen