Veyllo API 프리뷰
채팅·비전·텍스트 변환을 위한 OpenAI 호환 엔드포인트. 아무 OpenAI 클라이언트나 향하게 하고, 익숙한 요청 형태 그대로. 전부 키 하나로.
POST /v1/chat/completions
메시지를 보내고 응답을 받으세요. 스트리밍 여부는 자유. 표준 OpenAI Chat Completions, 모델은 하나: veyllo-chat.
{
"model": "veyllo-chat",
"messages": [
{ "role": "user", "content": "Summarize this." }
]
}비전도 같은 엔드포인트
아무 메시지에나 이미지를 넣으면 veyllo-chat이 읽습니다. 별도 모델도 추가 설정도 없습니다.
{
"model": "veyllo-chat",
"messages": [{ "role": "user", "content": [
{ "type": "text", "text": "What's in this image?" },
{ "type": "image_url",
"image_url": { "url": "data:image/jpeg;base64,…" } }
]}]
}POST /v1/audio/transcriptions
오디오를 올리면 텍스트가 돌아옵니다. 표준 OpenAI 변환 형식. 초 단위 측정, EU 안에서 처리. 모델은 하나: veyllo-transcribe. 정확도를 높이려면 language(ko, en 등)를 넘기고, 생략하면 자동 감지합니다.
curl https://api.veyllo.app/v1/audio/transcriptions \
-H "Authorization: Bearer vaf_live_…" \
-F file=@meeting.mp3 \
-F model=veyllo-transcribe \
-F language=de
{ "text": "Guten Morgen, fangen wir an…" }그대로 갈아 끼우기
이미 OpenAI SDK를 쓰시나요? 두 줄만 바꾸면 Veyllo입니다.
from openai import OpenAI
client = OpenAI(
api_key="vaf_live_…",
base_url="https://api.veyllo.app/v1",
)
client.chat.completions.create(
model="veyllo-chat",
messages=[{"role": "user", "content": "Hello!"}],
)
client.audio.transcriptions.create(
model="veyllo-transcribe",
file=open("meeting.mp3", "rb"),
)