Zum Hauptinhalt springen
Der CometAPI-Provider für das AI SDK gibt Ihnen über eine einheitliche TypeScript-Schnittstelle Zugriff auf 500+ AI-Modelle. Verwenden Sie ihn, um Textgenerierung, Streaming, Embeddings und Bildgenerierung zu jeder Node.js- oder Edge-Runtime-Anwendung hinzuzufügen.

Unterstützte Funktionen

FunktionMethodeStatus
TextgenerierunggenerateText()Unterstützt
Text-StreamingstreamText()Unterstützt
Text-EmbeddingstextEmbeddingModel()Unterstützt
BildgenerierungimageModel()Unterstützt

Voraussetzungen

  • Node.js 18+
  • Ein CometAPI-Konto mit einem aktiven API-Schlüssel — hier erhalten
1

Provider installieren

Installieren Sie @cometapi/ai-sdk-provider zusammen mit dem AI SDK-Core-Paket:
npm install @cometapi/ai-sdk-provider ai
2

API-Schlüssel festlegen

Der Provider liest standardmäßig die Umgebungsvariable COMETAPI_KEY:
export COMETAPI_KEY=<COMETAPI_KEY>
Verwenden Sie Umgebungsvariablen, um das Festcodieren von Zugangsdaten in Ihrem Quellcode zu vermeiden.
3

Provider importieren

Importieren Sie die Standard-Provider-Instanz:
import { cometapi } from '@cometapi/ai-sdk-provider';
Um den API-Schlüssel, die base URL oder andere Einstellungen zu überschreiben, verwenden Sie createCometAPI:
import { createCometAPI } from '@cometapi/ai-sdk-provider';

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

Verwendung

Text generieren

Verwenden Sie generateText() für eine einmalige Antwort:
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);

Text streamen

Verwenden Sie streamText() für eine Ausgabe in Echtzeit in Blöcken:
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);
}

Embeddings generieren

Verwenden Sie textEmbeddingModel(), um Vektor-Embeddings zu erstellen:
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);

Bilder generieren

Verwenden Sie imageModel(), um Bilder aus Text-Prompts zu generieren:
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',
});

Provider-Konfiguration

createCometAPI akzeptiert die folgenden Optionen:
OptionTypStandardBeschreibung
apiKeystringprocess.env.COMETAPI_KEYCometAPI-API-Schlüssel
baseURLstringhttps://api.cometapi.com/v1API-base URL
headersRecord<string, string>Benutzerdefinierte Request-Header
fetchFetchFunctionBenutzerdefinierte fetch-Implementierung

Modellmethoden

Der Provider stellt mehrere Modellkonstruktoren bereit:
MethodeGibt zurückAnwendungsfall
cometapi(modelId)LanguageModelV2Textgenerierung und Streaming (Kurzform)
cometapi.chatModel(modelId)LanguageModelV2Chat Completions
cometapi.completionModel(modelId)LanguageModelV2Text-Completion
cometapi.languageModel(modelId)LanguageModelV2Alias für chatModel
cometapi.textEmbeddingModel(modelId)EmbeddingModelV2Text-Embeddings
cometapi.imageModel(modelId)ImageModelV2Bildgenerierung
Durchsuchen Sie die vollständige Liste der verfügbaren model IDs auf der Modelle-Seite.
  • Modellauswahl: Jedes Modell aus dem CometAPI-Modellkatalog funktioniert mit der entsprechenden Modellmethode — Chat-Modelle über cometapi(), Embedding-Modelle über textEmbeddingModel(), Bildmodelle über imageModel().
  • Antworten fein abstimmen: Übergeben Sie temperature, maxTokens und topP direkt an generateText() oder streamText(), z. B. generateText(\{..., temperature: 0.7\}).
  • Fehlerbehandlung: Umschließen Sie Aufrufe mit try/catch, um Authentifizierungsfehler, Rate Limits oder Netzwerkprobleme zu behandeln.
  • Sicherheit: Committen Sie API-Schlüssel niemals in die Versionsverwaltung. Verwenden Sie Umgebungsvariablen oder einen Secrets Manager.
  • Rate Limits: Überwachen Sie die Nutzung in der CometAPI-Konsole.

Verwandte Ressourcen