AS AgentScopeAPI 手册 / API Reference

OpenAIMultiModalTool

public class OpenAIMultiModalTool
源码Source io/agentscope/extensions/model/openai/tool/OpenAIMultiModalTool.java:57–594

OpenAI Multi Modal 工具,封装可被智能体调用的能力。位于 io.agentscope.extensions.model.openai.tool 包。核心成员包括 openaiTextToImage、openaiImageToText、openaiTextToAudio、openaiAudioToText、OpenAIMultiModalTool。

OpenAI multimodal tool.

Supports:

  • Text to image(s)

  • Image to text (via vision models)

  • Text to audio (speech)

  • Audio to text (transcription)

This implementation uses the custom OpenAIClient HTTP client instead of the OpenAI Java SDK, keeping the core module lightweight and dependency-free.

Please refer to the OpenAI documentation for more details.

构造器摘要Constructor Summary

构造器Constructor说明Description
public OpenAIMultiModalTool(String apiKey)
创建新的OpenAIMultiModalTool 使用默认基类 URL。
Create a new OpenAIMultiModalTool with default base URL.
public OpenAIMultiModalTool(String apiKey, String baseUrl)
创建新的OpenAIMultiModalTool 使用自定义基类 URL。
Create a new OpenAIMultiModalTool with custom base URL.
public OpenAIMultiModalTool(String apiKey, String baseUrl, String defaultModelName)
创建新的OpenAIMultiModalTool 使用自定义基类 URL 和默认视觉模型。
Create a new OpenAIMultiModalTool with custom base URL and default vision model.
protected OpenAIMultiModalTool(OpenAIClient client)
初始化 `OpenAIMultiModalTool` 实例。
Create a new OpenAIMultiModalTool with custom client (for testing).
protected OpenAIMultiModalTool(OpenAIClient client, String defaultModelName)
初始化 `OpenAIMultiModalTool` 实例。
Create a new OpenAIMultiModalTool with custom client and default model (for testing).

方法摘要Method Summary

方法Method说明Description
public Mono<ToolResultBlock> openaiTextToImage(String prompt, String model, Integer n, String size, String quality, String responseFormat)
执行OpenAI 文本到图像相关操作。
Generate image(s) based on the given prompt.
public Mono<ToolResultBlock> openaiImageToText(String imageUrls, String prompt, String model, Integer maxTokens)
转换图像(s)到文本使用视觉模型。
Convert image(s) to text using vision models.
public Mono<ToolResultBlock> openaiTextToAudio(String text, String model, String voice, String responseFormat, Double speed)
转换文本到音频(语音)使用 OpenAI TTS 模型。
Convert text to audio (speech) using OpenAI TTS models.
public Mono<ToolResultBlock> openaiAudioToText(String audioUrl, String model, String language, String prompt, String responseFormat, Double temperature)
执行OpenAI 音频到文本相关操作。
Convert audio to text (transcription) using OpenAI Whisper models.

构造器详情Constructor Detail

OpenAIMultiModalTool

public OpenAIMultiModalTool(String apiKey)

创建新的OpenAIMultiModalTool 使用默认基类 URL。

Create a new OpenAIMultiModalTool with default base URL.

参数Parameters
名称Name类型Type说明Description
apiKeyStringOpenAI API 密钥。the OpenAI API key
源码Source io/agentscope/extensions/model/openai/tool/OpenAIMultiModalTool.java:78–80

OpenAIMultiModalTool

public OpenAIMultiModalTool(String apiKey, String baseUrl)

创建新的OpenAIMultiModalTool 使用自定义基类 URL。

Create a new OpenAIMultiModalTool with custom base URL.

参数Parameters
名称Name类型Type说明Description
apiKeyStringOpenAI API 密钥。the OpenAI API key
baseUrlString基类 URL(类型 `String`)。the base URL (null for default https://api.openai.com)
源码Source io/agentscope/extensions/model/openai/tool/OpenAIMultiModalTool.java:88–90

OpenAIMultiModalTool

public OpenAIMultiModalTool(String apiKey, String baseUrl, String defaultModelName)

创建新的OpenAIMultiModalTool 使用自定义基类 URL 和默认视觉模型。

Create a new OpenAIMultiModalTool with custom base URL and default vision model.

参数Parameters
名称Name类型Type说明Description
apiKeyStringOpenAI API 密钥。the OpenAI API key
baseUrlString基类 URL(类型 `String`)。the base URL (null for default https://api.openai.com)
defaultModelNameString默认模型名称(类型 `String`)。the default vision model name used when the caller omits the model parameter (e.g., "gpt-4o" for OpenAI, or your backend's vision model name)
源码Source io/agentscope/extensions/model/openai/tool/OpenAIMultiModalTool.java:100–111

OpenAIMultiModalTool

protected OpenAIMultiModalTool(OpenAIClient client)

初始化 OpenAIMultiModalTool 实例。

Create a new OpenAIMultiModalTool with custom client (for testing).

参数Parameters
名称Name类型Type说明Description
clientOpenAIClientOpenAI 客户端。the OpenAI client
源码Source io/agentscope/extensions/model/openai/tool/OpenAIMultiModalTool.java:118–120

OpenAIMultiModalTool

protected OpenAIMultiModalTool(OpenAIClient client, String defaultModelName)

初始化 OpenAIMultiModalTool 实例。

Create a new OpenAIMultiModalTool with custom client and default model (for testing).

参数Parameters
名称Name类型Type说明Description
clientOpenAIClientOpenAI 客户端。the OpenAI client
defaultModelNameString默认视觉模型名称。the default vision model name
源码Source io/agentscope/extensions/model/openai/tool/OpenAIMultiModalTool.java:128–136

方法详情Method Detail

openaiTextToImage

public Mono<ToolResultBlock> openaiTextToImage(String prompt, String model, Integer n, String size, String quality, String responseFormat)

执行OpenAI 文本到图像相关操作。

Generate image(s) based on the given prompt.

参数Parameters
名称Name类型Type说明Description
promptString提示词(类型 `String`)。the text prompt to generate image
modelString模型实例(类型 `String`)。the model to use (e.g., "dall-e-3", "dall-e-2")
nIntegern(类型 `Integer`)。the number of images to generate (1 for dall-e-3, 1-10 for dall-e-2)
sizeString大小(类型 `String`)。the size of the image (e.g., "1024x1024", "1792x1024", "1024x1792")
qualityStringquality(类型 `String`)。the quality of the image ("standard" or "hd" for dall-e-3)
responseFormatString响应("URL"或"b64_JSON")的格式。the format of the response ("url" or "b64_json")
返回Returns Mono<ToolResultBlock>
返回Mono。a ToolResultBlock containing the generated image(s)
源码Source io/agentscope/extensions/model/openai/tool/OpenAIMultiModalTool.java:149–278

openaiImageToText

public Mono<ToolResultBlock> openaiImageToText(String imageUrls, String prompt, String model, Integer maxTokens)

转换图像(s)到文本使用视觉模型。

Convert image(s) to text using vision models.

参数Parameters
名称Name类型Type说明Description
imageUrlsString图像 Urls(类型 `String`)。the URLs of the images to analyze
promptString提示词(类型 `String`)。the text prompt describing what to extract from the images
modelString模型实例(类型 `String`)。the vision model to use (leave empty to use the configured default)
maxTokensInteger最大令牌数(类型 `Integer`)。the maximum number of tokens in the response
返回Returns Mono<ToolResultBlock>
返回Mono。a ToolResultBlock containing the text description of the images
源码Source io/agentscope/extensions/model/openai/tool/OpenAIMultiModalTool.java:289–407

openaiTextToAudio

public Mono<ToolResultBlock> openaiTextToAudio(String text, String model, String voice, String responseFormat, Double speed)

转换文本到音频(语音)使用 OpenAI TTS 模型。

Convert text to audio (speech) using OpenAI TTS models.

参数Parameters
名称Name类型Type说明Description
textString文本到转换到语音。the text to convert to speech
modelString模型实例(类型 `String`)。the TTS model to use (e.g., "tts-1", "tts-1-hd")
voiceString语音(类型 `String`)。the voice to use ("alloy", "echo", "fable", "onyx", "nova", "shimmer")
responseFormatString响应格式(类型 `String`)。the audio format ("mp3", "opus", "aac", "flac")
speedDoublespeed(类型 `Double`)。the speed of the speech (0.25 to 4.0)
返回Returns Mono<ToolResultBlock>
返回Mono。a ToolResultBlock containing the audio as base64 data
源码Source io/agentscope/extensions/model/openai/tool/OpenAIMultiModalTool.java:419–491

openaiAudioToText

public Mono<ToolResultBlock> openaiAudioToText(String audioUrl, String model, String language, String prompt, String responseFormat, Double temperature)

执行OpenAI 音频到文本相关操作。

Convert audio to text (transcription) using OpenAI Whisper models.

参数Parameters
名称Name类型Type说明Description
audioUrlString音频 URL(类型 `String`)。the URL of the audio file to transcribe
modelString模型实例(类型 `String`)。the transcription model to use (e.g., "whisper-1")
languageStringlanguage(类型 `String`)。the language of the audio (ISO-639-1 code, optional)
promptString提示词(类型 `String`)。optional text to guide the model's style
responseFormatString响应格式(类型 `String`)。the format of the response ("json", "text", "verbose_json", etc.)
temperatureDoubletemperature(类型 `Double`)。the temperature for sampling (0.0 to 1.0)
返回Returns Mono<ToolResultBlock>
返回Mono。a ToolResultBlock containing the transcribed text
源码Source io/agentscope/extensions/model/openai/tool/OpenAIMultiModalTool.java:507–593
基于官方固定版本源码静态生成Generated from pinned official sources · Python 2.0.11 · Java 2.0.4
签名与文档为静态抽取;如有疑问请以源码为准。Signatures and docs are extracted statically; verify against the source when in doubt.