Для интеграции ChatGPT API в приложение на PHP, вам нужно использовать библиотеку cURL для отправки HTTP-запросов. Ниже приведен пример кода на PHP, который отправляет запрос к API OpenAI (ChatGPT), получает ответ и выводит его.

Шаги:

  1. Получите API-ключ. Зарегистрируйтесь на сайте OpenAI и получите API-ключ для доступа к их сервису.
  2. Установите cURL, если он не установлен, для выполнения HTTP-запросов.
  3. Пример кода:

<?php
// Ваш API-ключ OpenAI
$api_key = '_ключ';

// URL к API OpenAI
$url = 'https://api.openai.com/v1/chat/completions';

// Заголовки запроса
$headers = [
    'Content-Type: application/json',
    'Authorization: Bearer ' . $api_key,
];

// Данные для запроса
$data = [
    'model' =--> 'gpt-4o-mini', // или 'gpt-4', если у вас есть доступ
    'messages' => [
        [
            'role' => 'system',
            'content' => 'You are a helpful assistant.'
        ],
        [
            'role' => 'user',
            'content' => 'Привет, как дела?' // Запрос пользователя
        ]
    ],
    'max_tokens' => 100,
    'temperature' => 0.7
];

// Преобразование данных в JSON
$data_string = json_encode($data);

// Инициализация cURL
$ch = curl_init($url);

// Настройка параметров cURL
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);

// Выполнение запроса и получение ответа
$response = curl_exec($ch);

// Проверка на ошибки
if (curl_errno($ch)) {
    echo 'Ошибка запроса: ' . curl_error($ch);
} else {
    // Преобразование ответа в массив
    $response_data = json_decode($response, true);

    // Выводим весь ответ для диагностики
    echo '<pre>';
    print_r($response_data);
    echo '</pre>';

    // Проверка на наличие ключа 'choices' и вывод результата
    if (isset($response_data['choices']) && isset($response_data['choices'][0]['message']['content'])) {
        echo 'Ответ ChatGPT: ' . $response_data['choices'][0]['message']['content'];
    } else {
        // Если 'choices' нет, выводим ошибку или сообщение
        echo 'Ошибка: нет ответа от модели.';
    }
}

// Закрытие cURL
curl_close($ch);
?>

Пояснение:

  1. API-ключ. Замените 'ваш_ключ_api_openai' своим API-ключом.
  2. URL запроса. Мы отправляем POST-запрос к https://api.openai.com/v1/chat/completions.
  3. Заголовки. Указываются тип контента (JSON) и авторизация с использованием Bearer токена.
  4. Тело запроса. Содержит модель (например, gpt-3.5-turbo или gpt-4), сообщения (user и system), максимальное количество токенов и температуру для генерации текста.
  5. Ответ. После получения ответа, он выводится в формате JSON.

Таким образом, данный скрипт отправляет текстовый запрос к ChatGPT и выводит его ответ.