Použití nástroje code_interpreter
Nástroj code_interpreter poskytuje vašemu modelu prostředí runtime Pythonu, ve kterém může generovat a spouštět kód Pythonu.
Co je nástroj code_interpreter?
Nástroj code_interpreter umožňuje generování modelů AI dynamicky psát a spouštět kód Pythonu během konverzace. Model může místo pouhé diskuze o kódu nebo algoritmech otestovat logiku, zpracovávat data a vracet skutečné výsledky z kódu. Tím se model transformuje z myslitele na dělitele.
Mezi klíčové funkce patří:
- Dynamické spouštění Pythonu: Model zapisuje a spouští kód Pythonu v prostředí s izolovaným prostorem (sandbox)
- Zpracování souborů: Nahrávání, zpracování a stahování souborů (CSV, JSON, obrázky atd.)
- Analýza dat: Provádění výpočtů, statistické analýzy a transformace dat za běhu
- Zpětná vazba v reálném čase: Model zobrazuje výsledky provádění kódu a může iterovat nebo opravovat chyby.
- Řešení složitých problémů: Řešení matematických problémů, simulací a logických hádanek prostřednictvím spustitelného kódu
Běžné případy použití
| Případ použití | Příklad |
|---|---|
| Analýza dat | Parsování souboru CSV a generování souhrnných statistik |
| Matematika a fyzika | Řešení rozdílových rovnic nebo simulace fyzikálních scénářů |
| Převod souborů | Převod mezi datovými formáty (JSON ↔ CSV atd.) |
| Prototypování | Testování algoritmů a nápadů před formální implementací |
Jednoduchý příklad
Tady je postup, jak používat code_interpreter s rozhraním API odpovědí OpenAI:
from openai import OpenAI
client = OpenAI(
base_url={openai_endpoint},
api_key={auth_key_or_token}
)
# Get response using the code_interpreter tool
response = client.responses.create(
model={model_deployment},
instructions="You are an AI assistant that provides information. Use the python tool to run code for math problems.",
input="What is the square root of 16?",
tools=[{"type": "code_interpreter",
"container": {"type": "auto"}}]
)
print(response.output_text)
Výstup z tohoto kódu je podobný tomuto:
The square root of 16 is 4.
Důležitější je, že při kontrole podrobností objektu odpovědi vráceného modelem zjistíte, že výsledek se vypočítal a vrátil do modelu pomocí dynamicky generovaného kódu Pythonu takto:
import math
# Calculate the square root of 16
square_root = math.sqrt(16)
square_root
Jak nástroj code_interpreter funguje
Obecný postup použití nástroje code_interpreter je následující:
- Odešlete žádost: Do pole nástrojů zahrňte code_interpreter.
- Model analyzuje úlohu: Model určuje, jestli je potřeba provést kód.
- Model generuje kód: Model zapíše kód Pythonu k provedení úlohy.
- Kód se spouští v izolovaném prostředí (sandbox) s přístupem k běžným knihovnám (například pandas, numpy a math).
- Vrácené výsledky: Model obdrží výstup a začlení ho do své odpovědi.
Osvědčené postupy
- Buďte specifičtí: Jasně popište formát dat a očekávaný výstup. Mnoho modelů interně používá název python tool pro identifikaci nástroje code_interpreter, takže tento název používejte ve svých pokynech.
- Uveďte kontext: Do výzev zahrňte relevantní znalosti domény.
- Ověření výsledků: Před použitím v produkčním prostředí vždy zkontrolujte kód vygenerovaný AI.
- Monitorování nákladů: Provádění kódu přidává tokeny; složité operace můžou používat více prostředků
- Využití knihoven: Předinstalované jsou běžné balíčky, jako jsou pandas, numpy a matplotlib.
- Zpracování chyb: Model může zobrazit chyby a pokusí se je opravit automaticky.
Omezení, o kterých byste měli vědět
- Výkony probíhají v izolovaném prostředí (sandbox) bez přístupu k externí síti
- Některé knihovny nemusí být k dispozici; dejte modelu vědět, jestli standardní knihovna selže.
- Limity časového limitu se vztahují na dlouhotrvající operace.
- Kód běží s omezeními paměti – masivní datové sady můžou potřebovat streamování nebo blokování dat.