Chuyển đến nội dung chính
Provider CometAPI cho AI SDK cho phép bạn truy cập hơn 500 mô hình AI thông qua một giao diện TypeScript hợp nhất. Hãy dùng nó để thêm khả năng tạo văn bản, Streaming, Embeddings và tạo hình ảnh vào bất kỳ ứng dụng Node.js hoặc Edge runtime nào.

Tính năng được hỗ trợ

Tính năngPhương thứcTrạng thái
Tạo văn bảngenerateText()Được hỗ trợ
Streaming văn bảnstreamText()Được hỗ trợ
Text embeddingstextEmbeddingModel()Được hỗ trợ
Tạo hình ảnhimageModel()Được hỗ trợ

Điều kiện tiên quyết

  • Node.js 18+
  • Một tài khoản CometAPI với API key đang hoạt động — lấy tại đây
1

Cài đặt provider

Cài đặt @cometapi/ai-sdk-provider cùng với gói lõi AI SDK:
npm install @cometapi/ai-sdk-provider ai
2

Đặt API key của bạn

Provider mặc định đọc biến môi trường COMETAPI_KEY:
export COMETAPI_KEY=<COMETAPI_KEY>
Sử dụng biến môi trường để tránh hardcode thông tin xác thực trong mã nguồn.
3

Import provider

Import instance provider mặc định:
import { cometapi } from '@cometapi/ai-sdk-provider';
Để ghi đè API key, base URL hoặc các thiết lập khác, hãy dùng createCometAPI:
import { createCometAPI } from '@cometapi/ai-sdk-provider';

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

Cách sử dụng

Tạo văn bản

Dùng generateText() cho phản hồi một lần:
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 văn bản

Dùng streamText() cho đầu ra theo từng phần theo thời gian thực:
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);
}

Tạo embeddings

Dùng textEmbeddingModel() để tạo vector embeddings:
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);

Tạo hình ảnh

Dùng imageModel() để tạo hình ảnh từ prompt văn bản:
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',
});

Cấu hình provider

createCometAPI chấp nhận các tùy chọn sau:
Tùy chọnKiểuMặc địnhMô tả
apiKeystringprocess.env.COMETAPI_KEYAPI key CometAPI
baseURLstringhttps://api.cometapi.com/v1URL cơ sở của API
headersRecord<string, string>Header request tùy chỉnh
fetchFetchFunctionTriển khai fetch tùy chỉnh

Phương thức mô hình

Provider cung cấp một số hàm khởi tạo mô hình:
Phương thứcGiá trị trả vềTrường hợp sử dụng
cometapi(modelId)LanguageModelV2Tạo văn bản và Streaming (cú pháp rút gọn)
cometapi.chatModel(modelId)LanguageModelV2Chat completions
cometapi.completionModel(modelId)LanguageModelV2Text completions
cometapi.languageModel(modelId)LanguageModelV2Bí danh của chatModel
cometapi.textEmbeddingModel(modelId)EmbeddingModelV2Text embeddings
cometapi.imageModel(modelId)ImageModelV2Tạo hình ảnh
Xem danh sách đầy đủ các model ID có sẵn trên trang Models.
  • Lựa chọn mô hình: Bất kỳ mô hình nào từ danh mục mô hình CometAPI đều hoạt động với phương thức mô hình tương ứng — chat models qua cometapi(), embedding models qua textEmbeddingModel(), image models qua imageModel().
  • Tinh chỉnh phản hồi: Truyền temperature, maxTokenstopP trực tiếp vào generateText() hoặc streamText(), ví dụ generateText(\{..., temperature: 0.7\}).
  • Xử lý lỗi: Bọc các lệnh gọi trong try/catch để xử lý lỗi xác thực, giới hạn tốc độ hoặc sự cố mạng.
  • Bảo mật: Không bao giờ commit API key vào hệ thống quản lý phiên bản. Hãy dùng biến môi trường hoặc trình quản lý secrets.
  • Giới hạn tốc độ: Theo dõi mức sử dụng trong CometAPI console.

Tài nguyên liên quan