Интеграция с Python

Запрос на генерацию текста [QA]

Endpoint /v1/chat/completions

Метод: POST

Черезimport openai


import openai

openai.api_key = 'YOUR_API_KEY'
openai.base_url = "https://api.hydraai.ru/v1/"

completion = openai.chat.completions.create(
    model="gpt-4o-mini",
    messages=[
        {
            "role": "user",
            "content": "Привет!",
        },
    ],
)
print(completion.choices[0].message.content)

Черезimport requests


import requests
import json

url = "https://api.hydraai.ru/v1/chat/completions"
headers = {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
}

data = {
    "messages": [
        {
            "role": "user",
            "content": "Что такое небо?"
        }
    ],
    "model": "gpt-4o-mini",
    "max_tokens": 100,
    "temperature": 0.8,
    "top_p": 0.9,
    "stream": False
}

response = requests.post(url, headers=headers, data=json.dumps(data))

if response.status_code == 200:
    print(response.json())
else:
    print(f"Error: {response.status_code}")
    print(response.text)

Запрос на генерацию изображения

Endpoint /v1/images/generations

Метод: POST


import openai
from io import BytesIO
from PIL import Image # pip install Pillow
import base64


# Инициализация клиента OpenAI с указанным базовым URL.
openai.api_key = 'YOUR_API_KEY'
openai.base_url = "https://api.hydraai.ru/v1/"

try:
    response = openai.images.generate(
        model="flux.1-schnell",
        # Текст запроса
        prompt="Фото большого и пушистого кота в высоком качестве, RAW фото", 
        size="1024x1408",
    )

    # Обработка ответа и отображение/сохранение изображения (пример)
    image_data = response.data[0].b64_json

    image = Image.open(BytesIO(base64.b64decode(image_data)))
    
    # Отображение изображения
    image.show()  
    
    # Сохранение изображения
    image.save(f"img/{response.id}.png") 

except openai.APIConnectionError as e:
    print(f"Ошибка подключения к OpenAI: {e}")
except openai.APIStatusError as e:
    print(f"Ошибка статуса OpenAI: {e}")
except Exception as e:
    print(f"Произошла непредвиденная ошибка: {e}")

Получение профиля пользователя

Endpoint /v1/users/profile

Метод: GET


import requests

url = "https://api.hydraai.ru/v1/users/profile"
headers = {
    "Authorization": "Bearer YOUR_API_KEY"
}

response = requests.get(url, headers=headers)

if response.status_code == 200:
    print(response.json())
else:
    print(f"Error: {response.status_code}")
    print(response.text)

Получение списка моделей

Endpoint /v1/models

Метод: GET


import requests

url = "https://api.hydraai.ru/v1/models"

response = requests.get(url)

if response.status_code == 200:
    print(response.json())
else:
    print(f"Error: {response.status_code}")
    print(response.text)

Полная документация по API предоставляется после получения ключа.

IP: 216.73.216.152