These Python examples are real runnable files. Edit the source file first; this page is rebuilt from the checked-in example and its metadata header.
Python Text To Speech
Generates speech audio through OpenAI.
- Provider:
openai - Env:
OPENAI_API_KEY,OPENAI_APIKEY - Level:
beginner - Run:
npm run example -- python src/examples/python/audio/speech-audio.py - Source: src/examples/python/audio/speech-audio.py
import base64
import json
import os
from pathlib import Path
from axllm import OpenAIResponsesClient
api_key = os.getenv("OPENAI_API_KEY") or os.getenv("OPENAI_APIKEY")
if not api_key:
raise SystemExit("Set OPENAI_API_KEY or OPENAI_APIKEY to run this example.")
client = OpenAIResponsesClient(
api_key=api_key,
model=os.getenv("AX_OPENAI_AUDIO_MODEL", "gpt-4o-mini-tts"),
model_config={"temperature": 0},
)
speech = client.speak({"text": "Ax turns LLM prompts into typed programs.", "voice": "alloy", "format": "mp3"})
print(json.dumps({"format": speech.get("format"), "transcript": speech.get("transcript"), "audioBytesBase64": len(speech.get("audio") or speech.get("data") or "")}, indent=2, sort_keys=True))Python Speech To Text
Transcribes a checked-in WAV file through OpenAI.
- Provider:
openai - Env:
OPENAI_API_KEY,OPENAI_APIKEY - Level:
intermediate - Run:
npm run example -- python src/examples/python/audio/transcribe-audio.py - Source: src/examples/python/audio/transcribe-audio.py
import base64
import json
import os
from pathlib import Path
from axllm import OpenAIResponsesClient
api_key = os.getenv("OPENAI_API_KEY") or os.getenv("OPENAI_APIKEY")
if not api_key:
raise SystemExit("Set OPENAI_API_KEY or OPENAI_APIKEY to run this example.")
client = OpenAIResponsesClient(
api_key=api_key,
model=os.getenv("AX_OPENAI_AUDIO_MODEL", "gpt-4o-mini-tts"),
model_config={"temperature": 0},
)
audio = Path("src/examples/assets/presentation.wav").read_bytes()
transcript = client.transcribe({"audio": base64.b64encode(audio).decode(), "language": "en", "model": "gpt-4o-mini-transcribe", "format": "json"})
print(json.dumps(transcript, indent=2, sort_keys=True))Python Audio Summary Pipeline
Transcribes audio and summarizes the transcript with an OpenAI-backed generator.
- Provider:
openai - Env:
OPENAI_API_KEY,OPENAI_APIKEY - Level:
advanced - Run:
npm run example -- python src/examples/python/audio/pipeline-audio.py - Source: src/examples/python/audio/pipeline-audio.py
import base64
import json
import os
from pathlib import Path
from axllm import OpenAICompatibleClient, OpenAIResponsesClient, ax
api_key = os.getenv("OPENAI_API_KEY") or os.getenv("OPENAI_APIKEY")
if not api_key:
raise SystemExit("Set OPENAI_API_KEY or OPENAI_APIKEY to run this example.")
text_client = OpenAICompatibleClient(
api_key=api_key,
model=os.getenv("AX_OPENAI_MODEL", "gpt-5.4-mini"),
model_config={"temperature": 0},
)
audio_client = OpenAIResponsesClient(
api_key=api_key,
model=os.getenv("AX_OPENAI_AUDIO_MODEL", "gpt-4o-mini-tts"),
model_config={"temperature": 0},
)
audio = Path("src/examples/assets/presentation.wav").read_bytes()
transcript = audio_client.transcribe({"audio": base64.b64encode(audio).decode(), "language": "en", "model": "gpt-4o-mini-transcribe", "format": "json"})
summarize = ax("transcript:string -> summary:string, followUps:string[]")
result = summarize.forward(text_client, {"transcript": transcript["text"]})
print(json.dumps({"transcript": transcript["text"], "result": result}, indent=2, sort_keys=True))