Skip to Content
ModèlesGPTSortie structurée et PDF

Sortie structurée et PDF avec GPT

Cette page présente la sortie structurée et l’entrée PDF pour la famille GPT ; les ID de modèle et la configuration des endpoints figurent dans la présentation de la famille GPT.

Sortie structurée

Passez un JSON Schema dans response_format ; avec strict: true, la sortie respecte strictement le schéma :

gpt_json_schema.py
import json import os from openai import OpenAI client = OpenAI(base_url="https://api.ofox.ai/v1", api_key=os.environ["OFOX_API_KEY"]) resp = client.chat.completions.create( model="openai/gpt-5.4-mini", response_format={ "type": "json_schema", "json_schema": { "name": "price", "strict": True, "schema": { "type": "object", "properties": {"price": {"type": "number"}, "currency": {"type": "string"}}, "required": ["price", "currency"], "additionalProperties": False, }, }, }, messages=[{"role": "user", "content": "Une batte et une balle coûtent 1,10 dollar au total, et la batte coûte 1 dollar de plus que la balle. Combien coûte la balle ?"}], ) print(json.loads(resp.choices[0].message.content))

Les autres écritures sont décrites dans Sortie structurée.

Entrée PDF

gpt_pdf.py
import base64 import os from openai import OpenAI client = OpenAI(base_url="https://api.ofox.ai/v1", api_key=os.environ["OFOX_API_KEY"]) pdf_b64 = base64.b64encode(open("invoice.pdf", "rb").read()).decode() resp = client.chat.completions.create( model="openai/gpt-5.4-mini", messages=[{"role": "user", "content": [ {"type": "file", "file": {"filename": "invoice.pdf", "file_data": f"data:application/pdf;base64,{pdf_b64}"}}, {"type": "text", "text": "Quel est le montant total de cette facture ?"}, ]}], ) print(resp.choices[0].message.content)

Les autres erreurs sont décrites dans Erreurs courantes.

Dernière mise à jour le