Skip to main content

prompty_openai/
lib.rs

1//! OpenAI provider for Prompty.
2//!
3//! This crate provides the OpenAI executor and processor implementations,
4//! registered under the key `"openai"`.
5//!
6//! # Usage
7//!
8//! ```rust,no_run
9//! prompty_openai::register();
10//! // Now invoke/turn will use OpenAI for agents with provider="openai"
11//! ```
12
13pub mod executor;
14pub mod models;
15pub mod processor;
16pub mod wire;
17
18pub use executor::OpenAIExecutor;
19pub use models::{list_models, list_models_async};
20pub use processor::{OpenAIProcessor, extract_tool_calls, process_response};
21pub use wire::{
22    build_chat_args, build_embedding_args, build_image_args, build_responses_args,
23    format_tool_messages, message_to_wire, tools_to_wire,
24};
25
26/// Register the OpenAI executor and processor in the global registry.
27pub fn register() {
28    prompty::register_executor("openai", OpenAIExecutor);
29    prompty::register_processor("openai", OpenAIProcessor);
30}