Переводчик презентаций с поддержкой ИИ

Введение

Aspose.Slides — мощный API для программного управления презентациями PowerPoint. В дополнение к созданию, редактированию и конвертации слайдов, он предлагает функции, основанные на ИИ, такие как Presentation Translation API для многоязычного содержимого слайдов.

Как это работает

Aspose.Slides не включает встроенные возможности ИИ, а интегрируется с внешними моделями ИИ через интернет. Эта функциональность предоставляется классом SlidesAIAgent для общения с AI‑службами.

Вы можете использовать встроенный OpenAIWebClient для подключения к API OpenAI.

Aspose.Slides обрабатывает связь, разбирает ответы ИИ и интеллектуально вставляет переведённый контент, сохраняя оригинальное расположение и форматирование слайдов.

Пример

В этом примере мы переводим презентацию PowerPoint на японский язык, используя встроенный OpenAIWebClient с указанной моделью OpenAI model.

// Загрузить презентацию для перевода.
$presentation = new Presentation("sample.pptx");

// Создать AI‑клиент с OpenAIWebClient, указав вашу модель и API‑ключ.
$aiWebClient = new OpenAIWebClient("gpt-4o-mini", "apiKey", null);

try {
    // Инициализировать SlidesAIAgent с AI‑клиентом.
    $aiAgent = new SlidesAIAgent($aiWebClient);

    // Перевести презентацию на японский.
    $aiAgent->translate($presentation, "japanese");

    // Сохранить переводную презентацию в формате PDF.
    $presentation->save("sample_jp.pdf", SaveFormat::Pdf);
} finally {
    $aiWebClient->close();
    $presentation->dispose();
}

По умолчанию встроенный OpenAIWebClient создаёт и управляет собственным внутренним экземпляром HttpURLConnection, автоматически контролируя его жизненный цикл. Однако если вы предпочитаете управлять HttpURLConnection самостоятельно — например, чтобы настроить прокси, использовать URLStreamHandlerFactory или другой HttpClient для лучшего управления ресурсами и производительности — вы можете передать собственный экземпляр HttpURLConnection при создании OpenAIWebClient.

// Создать и предварительно настроить ваш собственный экземпляр HttpURLConnection (настраиваемые тайм‑ауты, параметры прокси и т.д.).
$url = new Java("java.net.URL", "https://api.openai.com/v1/chat/completions");
$urlConnection = $url->openConnection();
$urlConnection->setConnectTimeout(10000);
$urlConnection->setReadTimeout(60000);

// Передать соединение AI‑клиенту.
$aiWebClient = new OpenAIWebClient("gpt-4o-mini", "apiKey", null, $urlConnection);

Пример Azure OpenAI

Вы можете настроить переводчик для использования вашего развертывания Azure OpenAI с помощью OpenAICompatibleWebClient.

use aspose\slides\OpenAICompatibleWebClient;
use aspose\slides\Presentation;
use aspose\slides\SaveFormat;
use aspose\slides\SlidesAIAgent;

$model = "your-azure-deployment-name";
$apiKey = "your-azure-api-key";
$baseUrl = "https://your-resource.openai.azure.com/openai/v1/";

$aiWebClient = new OpenAICompatibleWebClient($model, $apiKey, $baseUrl);
try {
    $aiAgent = new SlidesAIAgent($aiWebClient);
    $presentation = new Presentation("Presentation.pptx");
    try {
        $aiAgent->translate($presentation, "spanish");
        $presentation->save("Translated.pptx", SaveFormat::Pptx);
    } finally {
        $presentation->dispose();
    }
} finally {
    $aiWebClient->dispose();
}

Этот фрагмент кода демонстрирует перевод презентации с использованием вашего конечного адреса Azure OpenAI. Замените значения заполнителей на имя развертывания, API‑ключ и URL конечной точки.

Ключевые преимущества

Presentation Translation API от Aspose.Slides предоставляет решение на базе ИИ для создания многоязычных презентаций PowerPoint. Автоматизируя перевод и сохраняя оригинальное оформление и дизайн, он экономит время и снижает количество ошибок по сравнению с ручными процессами. Независимо от того, являетесь ли вы разработчиком, преподавателем или бизнес‑профессионалом, этот API позволяет создавать привлекательные локализованные презентации для глобальной аудитории — расширяя охват и улучшая коммуникацию.