Langsung ke konten utama

Gambaran Umum

Untuk LemonData, default yang paling stabil di Vercel AI SDK adalah penyedia yang kompatibel dengan OpenAI. Jika Anda secara khusus memerlukan perilaku Responses native, Anda dapat beralih ke penyedia OpenAI dan tetap menggunakan URL dasar LemonData yang sama. Halaman ini sebaiknya dibaca sebagai pola integrasi yang direkomendasikan, bukan sebagai klaim bahwa setiap helper di Vercel AI SDK memiliki pengujian end-to-end khusus di repo ini.
Jenis: Framework atau platformJalur utama: Default yang kompatibel dengan OpenAITingkat dukungan: Pola integrasi yang direkomendasikan

Default yang Direkomendasikan: Penyedia yang Kompatibel dengan OpenAI

npm install ai @ai-sdk/openai-compatible
import { createOpenAICompatible } from '@ai-sdk/openai-compatible';

export const lemondata = createOpenAICompatible({
  name: 'lemondata',
  apiKey: process.env.LEMONDATA_API_KEY,
  baseURL: 'https://api.lemondata.cc/v1',
});

Menghasilkan Teks

import { generateText } from 'ai';
import { lemondata } from './lemondata';

const { text } = await generateText({
  model: lemondata.chatModel('gpt-5.4'),
  prompt: 'Explain LemonData in one sentence.',
});

console.log(text);

Streaming Teks

import { streamText } from 'ai';
import { lemondata } from './lemondata';

const result = await streamText({
  model: lemondata.chatModel('gpt-5.4'),
  prompt: 'Write a short poem about coding.',
});

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

Pemanggilan Tool

import { generateText, tool } from 'ai';
import { z } from 'zod';
import { lemondata } from './lemondata';

const result = await generateText({
  model: lemondata.chatModel('gpt-5.4'),
  prompt: 'What is the weather in San Francisco?',
  tools: {
    weather: tool({
      description: 'Get weather in a location',
      parameters: z.object({
        location: z.string(),
      }),
      execute: async ({ location }) => ({
        location,
        temperature: 72,
        condition: 'sunny',
      }),
    }),
  },
});

console.log(result.text);

Output Terstruktur

import { generateObject } from 'ai';
import { z } from 'zod';
import { lemondata } from './lemondata';

const { object } = await generateObject({
  model: lemondata.chatModel('gpt-5.4'),
  schema: z.object({
    name: z.string(),
    role: z.string(),
  }),
  prompt: 'Generate a fake developer profile.',
});

console.log(object);

Jika Anda Secara Eksplisit Memerlukan Perilaku Native Responses

npm install ai @ai-sdk/openai
import { createOpenAI } from '@ai-sdk/openai';

export const lemondataResponses = createOpenAI({
  apiKey: process.env.LEMONDATA_API_KEY,
  baseURL: 'https://api.lemondata.cc/v1',
});
import { generateText } from 'ai';
import { lemondataResponses } from './lemondata-responses';

const { text } = await generateText({
  model: lemondataResponses('gpt-5.4'),
  prompt: 'Explain LemonData in one sentence.',
});
Gunakan @ai-sdk/openai-compatible sebagai default yang aman untuk integrasi bergaya proxy. Beralihlah ke @ai-sdk/openai hanya jika Anda secara eksplisit menginginkan jalur penyedia yang dibangun di atas /v1/responses.

Variabel Environment

# .env.local
LEMONDATA_API_KEY=sk-your-lemondata-key

Praktik Terbaik

Untuk gateway pihak ketiga dan backend proxy, @ai-sdk/openai-compatible biasanya merupakan titik awal yang paling minim kejutan.
Jika Anda memerlukan perilaku penyedia yang terkait dengan /v1/responses, ganti package penyedia secara sengaja alih-alih mencampurkan kedua pola dalam satu client.
Jangan pernah mengekspos LemonData API key Anda dalam kode sisi client. Tempatkan setup penyedia di file server atau route API.