AI Ustoz UZ: изучайте искусственный интеллект на узбекском языке

API: структурированный запрос и ответ

Продвинутый уровень · урок 1 · около 14 мин

Сервисы искусственного интеллекта обычно работают через API: программа отправляет сервису структурированный запрос, сервис возвращает структурированный ответ. Запрос и ответ чаще всего в формате JSON. В этом уроке мы не подключаемся к настоящему сервису: тренируем только структуру запроса и ответа.

Запрос обычно состоит из названия модели и списка сообщений; у каждого сообщения есть роль (система, пользователь) и текст. В ответе результат лежит вложенно, поэтому достают его слой за слоем. Названия полей зависят от сервиса: читайте их в официальной документации.

import json

javob_matn = """{"holat": "ok", "natija": {"matn": "Salom", "tokenlar": 3}}"""
javob = json.loads(javob_matn)
print(javob["holat"])
print(javob["natija"]["matn"])
Результатok
Salom

Важное правило: перед использованием ответа проверьте его статус (успех или ошибка). Секретные ключи (API-ключ) не записывайте в код, который выкладывают открыто, и не отправляйте их диалоговому инструменту.

Запомните

  • Запрос и ответ обычно в JSON.
  • Нужное значение из ответа достают слой за слоем.
  • Сначала проверьте статус; API-ключ храните в секрете.

Упражнение

Что разумно проверить, прежде чем брать текст из ответа?

Ответ и пояснение
  1. Статус ответа: успех это или ошибка. (верный ответ)в ответе с ошибкой нужного поля может не быть.
  2. Ничего: ответ всегда верный.сеть и сервис могут вернуть ошибку.
  3. Только длину ответа.длина не говорит об успехе.

Упражнения с кодом

  1. Создайте словарь payload: ключ model со значением mini, ключ messages со списком из одного сообщения; в сообщении rol = user и matn = значение savol.
    Подсказка: Внутри списка messages словарь: [{"rol": "user", "matn": savol}].
  2. Используйте d: если holat равно ok, выведите сначала текст, затем число токенов; иначе выведите xato.
    Подсказка: Проверьте d["holat"] == "ok"; значения лежат внутри d["natija"].

Выполните упражнение в приложении.

Практическое задание

Для воображаемого сервиса вопросов и ответов запишите запрос в виде JSON (название модели, одно сообщение). Реальные ключи и данные не вписывайте.

  • Записал JSON запроса
  • В нём есть роль и текст

Словарь

Интерактивный режим: поиск, прогресс и упражнения на Python.