Текст

Получение всех доступных моделей для генерации текста

Для получения массива доступных моделей достаточно отправить GET-запрос на эндпоинт https://api.air.fail/public/text, добавив в заголовок авторизации свой API-ключ:

Authorization: sk-...

Показать код
  1. Пример на Python (Библиотека requests)

import requests

url = "https://api.air.fail/public/text"
api_key = "<API-ключ>"
headers = {"Authorization": api_key}
response = requests.get(url, headers=headers)
print(response.json())
  1. Пример на Python (Библиотека httpx)

import httpx

url = "https://api.air.fail/public/text"
api_key = "<API-ключ>"
headers = {"Authorization": api_key}
response = httpx.get(url, headers=headers)
print(response.json())

Платформа регулярно обновляется новыми моделями, поэтому результат может меняться.

Обращение к модели генерации текста

Для обращения к конкретной модели достаточно отправить POST-запрос на тот же эндпоинт, дополнив его названием модели и передав в теле запроса объект Message. Результатом обращения будет массив, состоящий из объектов Message, но пришедших от нейронной модели.

Пример эндпоинта для ChatGPT: https://api.air.fail/public/text/chatgpt.

  1. Генерация текста на CURL

    Обычная генерация

    curl -X POST "https://api.air.fail/public/text/chatgpt" \
      -H "Authorization: <API-ключ>" \
      -F "content=Привет! Как дела?" \
      -F 'info={"version":"gpt-5","temperature":0.5}'
    

    Генерация с прикрепленным файлом

    curl -X POST "https://api.air.fail/public/text/chatgpt" \
      -H "Authorization: <API-ключ>" \
      -F "content=Привет! Как дела?" \
      -F 'info={"version":"gpt-5","temperature":0.5}' \
      -F "file=@example.png"
    
  2. Генерация текста на Python

    Обычная генерация (Библиотека requests)

    import requests
    import json
    
    url = "https://api.air.fail/public/text/chatgpt"
    api_key = "<API-ключ>"
    form_data = {
        "content": "Привет! Как дела?",
        "info": json.dumps({
            "version": "gpt-5",
            "temperature": 0.5,
        })
    }
    headers = {
        "Authorization": api_key
    }
    response = requests.post(url, data=form_data, headers=headers, timeout=120)
    print(response.json())
    

    Генерация с прикрепленным файлом (Библиотека requests)

    import requests
    import json
    
    url = "https://api.air.fail/public/text/chatgpt"
    api_key = "<API-Ключ>"
    form_data = {
        "content": "Привет, что на картинке?",
        "info": json.dumps({
            "version": "gpt-5",
            "temperature": 0.5,
            "reasoning": "Минимальный"
        })
    }
    headers = {"Authorization": api_key}
    files = {"file": ("example.png", open("example.png", "rb"))}
    response = requests.post(url, data=form_data, files=files, headers=headers, timeout=120)
    print(response.json())
    

    Обычная генерация (Библиотека httpx)

    import httpx
    import json
    
    url = "https://api.air.fail/public/text/chatgpt"
    api_key = "<API-ключ>"
    form_data = {
        "content": "Привет! Как дела?",
        "info": json.dumps({
            "version": "gpt-5",
            "temperature": 0.5,
        })
    }
    headers = {
        "Authorization": api_key
    }
    response = httpx.post(url, data=form_data, headers=headers, timeout=120)
    print(response.json())
    

    Генерация с прикрепленным файлом (Библиотека httpx)

    import httpx
    import json
    
    url = "https://api.air.fail/public/text/chatgpt"
    api_key = "<API-ключ>"
    form_data = {
        "content": "Привет! Как дела?",
        "info": json.dumps({
            "version": "gpt-5",
            "temperature": 0.5,
        })
    }
    headers = {
        "Authorization": api_key
    }
    files = {"file": ("example.png", open("example.png", "rb"))}
    response = httpx.post(url, data=form_data, files=files, headers=headers, timeout=120)
    print(response.json())
    

    Обычная генерация (Библиотека openai)

    from openai import OpenAI
    
    client = OpenAI(
        base_url="https://api.air.fail/public/openai/",
        api_key='<API-ключ>'
    )
    response = client.chat.completions.create(
        model="gpt-5",
        messages=[
            {"role": "system", "content": "Ты умный ассистент"},
            {"role": "user", "content": "Напиши короткий тост на день рождения"}
        ],
        temperature=0.7,
    )
    print(response)
    

    Генерация с прикрепленным файлом (Библиотека openai)

    import base64
    
    from openai import OpenAI
    
    client = OpenAI(
        base_url="https://api.air.fail/public/openai/",
        api_key='<API-ключ>'
    )
    
    with open("example.png", "rb") as f:
        image_base64 = base64.b64encode(f.read()).decode("utf-8")
    
    response = client.chat.completions.create(
        model="gpt-5",
        messages=[
            {
                "role": "user",
                "content": [
                    {"type": "text", "text": "Опиши, что изображено на картинке."},
                    {
                        "type": "image_url",
                        "image_url": {
                            "url": f"data:image/png;base64,{image_base64}"}
                    }
                ],
            }
        ],
    )
    print(response)