Запросы по API через Python [BETA]
Для работы вам понадобится:
1. Base URL - https://api.gptlama.ru/v1
2. Токен (API KEY) - сгенерируйте его в Lama AI GPT API
Список доступных моделей:
o3
o3-mini
gpt-4.1
gpt-4.1-mini
gpt-4o
o4-mini
None Stream режим(sync/async):
from openai import OpenAI
client = OpenAI(
api_key="xxxxx", # здесь должен быть токен
base_url="https://api.gptlama.ru/v1"
)
# --- список моделей ---
models = client.models.list() # ChatModelsPage
print("RAW models page:\n", models.model_dump()) # или .model_dump_json()
resp = client.chat.completions.create(
model="o4-mini",
stream=False,
messages=[
{"role": "system", "content": "Ты крутой ИИ ассистент"},
{"role": "user", "content": "Расскажи длинную историю о Dark Souls 2"}
],
)
print("\nFULL RESPONSE:\n", resp.model_dump())
print("\nASSISTANT SAYS:\n", resp.choices[0].message.content)
None Stream Async:
import asyncio
from openai import AsyncOpenAI
API_KEY = "xxxxx" # здесь должен быть токен
BASE_URL = "https://api.gptlama.ru/v1" # корневой URL (с /v1)
async def main() -> None:
async with AsyncOpenAI(api_key=API_KEY, base_url=BASE_URL) as client:
# ─────────── 1. Список моделей ───────────
models_page = await client.models.list() # ChatModelsPage
print("=== MODELS (raw) ===")
print(models_page.model_dump()) # dict с ответом
# ─────────── 2. Обычное завершение ───────────
resp = await client.chat.completions.create(
model="o4-mini",
stream=False, # <-- ключевой параметр
messages=[
{"role": "system", "content": "Ты крутой ИИ-ассистент"},
{"role": "user", "content": "Расскажи длинную историю о Dark Souls 2"}
],
)
print("\n=== FULL RESPONSE ===")
print(resp.model_dump()) # весь JSON для отладки
# Сам текст ассистента
answer = resp.choices[0].message.content
print("\n=== ASSISTANT SAYS ===")
print(answer)
if __name__ == "__main__":
asyncio.run(main())
Stream режим(sync/async):
from openai import OpenAI
client = OpenAI(
api_key="xxxxx", # здесь должен быть токен
base_url="https://api.gptlama.ru/v1"
)
# ─────────── список моделей ───────────
print(client.models.list()) # cписок моделей
# ─────────── потоковая генерация ───────
stream = client.chat.completions.create(
model="o4-mini",
stream=True,
messages=[
{"role": "system", "content": "Ты крутой ИИ ассистент"},
{"role": "user", "content": "Расскажи длинную историю о Dark Souls 2"}
],
)
# stream — это генератор ChatCompletionChunk
for chunk in stream:
delta = chunk.choices[0].delta # каждый новый «кусочек»
if delta.content: # некоторые чанки могут не нести текст
print(delta.content, end="", flush=True)
print("\n--- поток завершён ---")
Аналогичный запрос, но в асинхронном варианте:
import asyncio
from openai import AsyncOpenAI
async def main() -> None:
async with AsyncOpenAI(
api_key="xxxxx", # здесь должен быть токен
base_url="https://api.gptlama.ru/v1" # корневой URL
) as client:
# 1. Список моделей
models_resp = await client.models.list()
print(models_resp.model_dump()) # dict-форма ответа
# 2. Потоковая генерация
stream = await client.chat.completions.create(
model="o4-mini",
stream=True,
messages=[
{"role": "system", "content": "Ты крутой ИИ ассистент"},
{"role": "user", "content": "Расскажи длинную историю о dark souls 2"}
],
)
async for chunk in stream:
delta = chunk.choices[0].delta
if delta.content:
print(delta.content, end="", flush=True)
print("\n--- поток завершён ---")
if __name__ == "__main__":
asyncio.run(main())
Ссылки на наши ресурсы:
Канал Lama AI
Оплата Lama API
Техническая поддержка и вопросы
Спасибо за внимание