KolWrite KolWrite Разработчикам

Эндпоинты, совместимые с OpenAI

Управляемый ИИ KolWrite отвечает в тех же форматах, что и API OpenAI. Направьте SDK OpenAI или любой инструмент, где можно задать базовый URL, на KolWrite и используйте персональный токен доступа как ключ API:

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

Вызовы тратят кредиты аккаунта, которому принадлежит токен, по расходу токенов. Они не связаны с задачами расшифровки (см. руководство для агентов).

Требования

Эндпоинты

ЭндпоинтЧто делает
GET /modelsДоступные модели с credit_pricing для каждой
POST /chat/completionsЧат-ответы, в том числе потоком ("stream": true)
POST /responsesResponses API
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

Вопросы

Можно ли использовать SDK OpenAI с KolWrite?

Да. Задайте базовый URL https://api.kolwrite.com/api/v1/ai/openai, а ключом API сделайте токен KolWrite с областью доступа ai:use.

Поддерживаются ли потоковая передача и инструменты?

Чат-ответы идут потоком при "stream": true. GET /models показывает для каждой модели, поддерживает ли она инструменты, зрение и звук.

Какой эндпоинт расшифровывает аудио?

POST /audio/transcriptions — для коротких клипов; задачи расшифровки — для всего остального.

Markdown-версия этой страницы