KolWrite KolWrite المطورون

نقاط النهاية المتوافقة مع OpenAI

يردّ الذكاء الاصطناعي المُدار في KolWrite بنفس صيغ واجهة OpenAI. وجّه حزمة OpenAI SDK، أو أي أداة تتيح تحديد عنوان أساسي، إلى KolWrite، واستخدم رمز وصول شخصي بوصفه مفتاح API:

Base URL: https://api.kolwrite.com/api/v1/ai/openai
API key:  your kol_... token (scope ai:use)

تستهلك الاستدعاءات رصيدًا من الحساب الذي يملك الرمز، بحسب الاستخدام بالرموز النصية (tokens). وهي منفصلة عن مهام التفريغ (راجع دليل الوكلاء).

المتطلبات

نقاط النهاية

نقطة النهايةوظيفتها
GET /modelsالنماذج التي يمكنك استخدامها، مع credit_pricing لكل منها
POST /chat/completionsإكمالات المحادثة، مع البث ("stream": true)
POST /responsesواجهة Responses
POST /embeddingsالتضمينات
POST /audio/transcriptionsنص لمقطع صوتي قصير (الحقل file في نموذج multipart)
POST /images/generationsتوليد الصور

تُسمّى النماذج بأسماء مستعارة ثابتة: kw-auto (يختار بين نموذج سريع وآخر أقوى) وkw-fast وkw-pro. يبقى GET /models المصدر المعتمد لما هو متاح لرمزك؛ وكل إدخال فيه يذكر context_window ودعم الأدوات والرؤية والصوت.

Python

import os
from openai import OpenAI

client = OpenAI(
    base_url="https://api.kolwrite.com/api/v1/ai/openai",
    api_key=os.environ["KOLWRITE_TOKEN"],
)

reply = client.chat.completions.create(
    model="kw-auto",
    messages=[{"role": "user", "content": "Summarize this transcript in five bullets: ..."}],
)
print(reply.choices[0].message.content)

vectors = client.embeddings.create(model="kw-embedding", input=["first text", "second text"])

JavaScript

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api.kolwrite.com/api/v1/ai/openai",
  apiKey: process.env.KOLWRITE_TOKEN,
});

const stream = await client.chat.completions.create({
  model: "kw-fast",
  messages: [{ role: "user", content: "Write a title for this meeting." }],
  stream: true,
});
for await (const chunk of stream) process.stdout.write(chunk.choices[0]?.delta?.content ?? "");

curl

curl https://api.kolwrite.com/api/v1/ai/openai/chat/completions \
  -H "Authorization: Bearer $KOLWRITE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"model": "kw-auto", "messages": [{"role": "user", "content": "Hello"}]}'

curl https://api.kolwrite.com/api/v1/ai/openai/audio/transcriptions \
  -H "Authorization: Bearer $KOLWRITE_TOKEN" \
  -F file=@clip.wav -F model=kw-fast -F language=auto

مقطع قصير أم تسجيل كامل؟

/audio/transcriptions مسار سريع للمقاطع القصيرة: طلب واحد وإجابة واحدة بلا مهمة. ولا ينتج تسميات المتحدثين ولا النص المحفوظ بإصداراته. للاجتماع أو المقابلة أو الملف الطويل، ارفع الوسائط وأنشئ مهمة تفريغ: فهي تعيد توقيتات الكلمات والمتحدثين وSRT وVTT.

مع want_words=true تتضمن إجابة المقطع أيضًا words بالشكل {w, start, end} بالثواني من بداية المقطع.

ما الذي يختلف عن OpenAI

أسئلة

هل يمكنني استخدام OpenAI SDK مع KolWrite؟

نعم. اضبط العنوان الأساسي على https://api.kolwrite.com/api/v1/ai/openai ومفتاح API على رمز KolWrite يحمل النطاق ai:use.

هل يدعم البث والأدوات؟

تدعم إكمالات المحادثة البث مع "stream": true. ويخبرك GET /models لكل نموذج هل يدعم الأدوات والرؤية والصوت.

أي نقطة نهاية تفرّغ الصوت؟

POST /audio/transcriptions للمقاطع القصيرة؛ ومهام التفريغ لكل ما عدا ذلك.

نسخة Markdown من هذه الصفحة