Vols entendre l'agent intel·ligent Codex? No et pots perdre aquesta anàlisi en profunditat!

2/14/2026
5 min read

Vols entendre l'agent intel·ligent Codex? No et pots perdre aquesta anàlisi en profunditat!

OpenAI acaba de fer una cosa "anormal".

Normalment, OpenAI publica models més potents (com o1), però aquesta vegada, han publicat un bloc tècnic en profunditat 《Unrolling the Codex agent loop》, no només han obert el codi de la lògica central de Codex CLI, sinó que també han desglossat pas a pas com funciona un agent de codi (Coding Agent) madur.

Codex CLI

En l'actualitat, amb Claude Code i Cursor guanyant popularitat, aquest article d'OpenAI no només mostra múscul, sinó que també és una "guia per evitar errors per a arquitectes d'agents". Tant si vols utilitzar bé les eines de programació d'IA com si vols desenvolupar el teu propi Agent, val la pena estudiar aquest article paraula per paraula.

L'article complet té més de 8300 paraules i es necessiten uns 20 minuts per llegir-lo.

Primer, què és Codex CLI?

Codex CLI és una eina Agent de codificació de codi obert produïda per OpenAI, que es pot executar en un ordinador local o instal·lar en un editor de codi. Admet VS Code, Cursor, Windsurf, etc.

Adreça de codi obert: https://github.com/openai/codex

Codex CLI界面

I l'Agent Loop (bucle d'agent) que es presentarà aquesta vegada és la lògica central de Codex CLI: responsable de coordinar l'usuari, el model i la trucada del model per tal d'executar interaccions valuoses entre les eines.

Agent Loop (bucle d'agent intel·ligent)

El model és només un component, l'Agent (agent intel·ligent) pot constituir un producte.

El nucli de cada Agent d'IA és l'anomenat "bucle d'agent intel·ligent (Agent Loop)". El diagrama esquemàtic del bucle d'agent intel·ligent es mostra a continuació:

Agent Loop示意图

Normalment pensem que la programació d'IA és: "Jo pregunto, ell respon". Però dins de Codex CLI, aquest és un procés complex de bucle infinit...

Un Agent Loop estàndard inclou els següents passos:

  • Instruccions de l'usuari: un conjunt d'instruccions de text introduïdes per l'usuari (per exemple, "refactoritza aquesta funció").
  • Raonament del model: el model decideix si respon directament o si crida una eina (Tool Call).
  • Trucada d'eina: si el model decideix cridar list files o run shell, CLI executarà aquestes ordres localment.
  • Observació (Observation): es capturen els resultats de l'execució de l'eina (codi, errors, llista de fitxers).
  • Bucle: aquests resultats s'afegeixen a l'historial de converses i es tornen a alimentar al model. Després de veure els resultats, el model decideix el següent pas.
  • Finalització: fins que el model considera que la tasca s'ha completat i genera la resposta final.

Tot el procés des de la "entrada de l'usuari" fins a la "resposta de l'agent intel·ligent" s'anomena ronda de conversa (anomenada fil a Codex).

Multi-turn Agent loop

A mesura que avança la conversa, la longitud de l'indicador (Prompt) utilitzat per al raonament del model també augmenta. Aquesta longitud és important perquè cada model té una finestra de context, que representa el nombre màxim de tokens que el model pot utilitzar en una trucada de raonament.

Raonament del model

Codex CLI envia una sol·licitud HTTP a Responses API per al raonament del model. Codex utilitza Responses API per impulsar el bucle d'agent.

Què és Responses API?

Responses API és una interfície de desenvolupament d'agents intel·ligents de nova generació llançada per OpenAI el març de 2025, dissenyada per unificar les capacitats de conversa, trucada d'eines i processament multimodal, i per proporcionar als desenvolupadors una experiència de construcció d'aplicacions d'IA més flexible i potent.

El punt final de Responses API utilitzat per Codex CLI és configurable i es pot utilitzar amb qualsevol punt final que implementi Responses API.

Prompt构建流程

El model realitza un mostreig (genera una resposta)

La sol·licitud HTTP iniciada a Responses API iniciarà la primera "ronda" en la conversa de Codex. El servidor retornarà la resposta en flux mitjançant Server-Sent Events (SSE).

后续提示词结构

Cal tenir en compte que l'indicador de la ronda anterior és el prefix exacte del nou indicador. Aquest disseny pot millorar significativament l'eficiència de les sol·licituds posteriors: es pot utilitzar el mecanisme de memòria cau d'indicadors.

多轮对话提示词增长

L'impacte de l'extensió contínua de l'indicador a mesura que augmenten les rondes

1. Aspectes de rendiment

  • Augment del cost de mostreig del model: l'extensió contínua de l'indicador augmentarà el cost de mostreig del model, ja que el procés de mostreig ha de processar més dades, cosa que provoca un augment de la quantitat de càlcul.
  • Disminució de l'eficiència de la memòria cau: a mesura que l'indicador s'estén contínuament a mesura que augmenten les rondes, augmenta la dificultat de la coincidència de prefixos exactes i disminueix la probabilitat d'èxit de la memòria cau.

2. Aspectes de gestió de la finestra de context

  • La finestra de context s'esgota fàcilment: l'extensió contínua de l'indicador farà que el nombre de marques a la conversa augmenti ràpidament, i un cop superat el llindar de la finestra de context, pot provocar que la finestra de context s'esgoti.
  • Augment de la necessitat d'operacions de compressió: per evitar que la finestra de context s'esgoti, cal comprimir la conversa quan el nombre de marques superi el llindar.

3. Aspectes de risc d'error de memòria cau

  • Diverses operacions poden provocar errors de memòria cau: si la modificació de les eines disponibles del model, el model objectiu, la configuració de la caixa de sorra i altres operacions estan implicades a causa de l'extensió de l'indicador, augmentarà encara més el risc d'errors de memòria cau.
  • L'eina MCP augmenta la complexitat: el servidor MCP pot canviar dinàmicament la llista d'eines proporcionades, i respondre a les notificacions rellevants en converses llargues pot provocar errors de memòria cau.

Informació de referència: 《Unrolling the Codex agent loop》Font: OpenAI

Published in Technology

You Might Also Like