Salta al contingut principal
OpenAI

16 de maig del 2025

PublicacióProducte

Presentem Codex

Un agent d’enginyeria de programari basat en el núvol que pot treballar en moltes tasques en paral·lel, impulsat per codex-1. Disponible avui per als usuaris de ChatGPT Pro, Business i Enterprise, i aviat per als usuaris de Plus.

Dashboard asking ‘What should we code next?’ with a prompt box, repo/branch selectors, and a task list on a pastel code-themed backdrop.
S'està carregant…

Actualització del 3 de juny de 2025: Codex ja està disponible per als usuaris de ChatGPT Plus. També estem permetent que els usuaris proporcionin a Codex accés a internet durant l’execució de tasques. Consulta el registre de canvis(s'obre en una finestra nova) i la documentació(s'obre en una finestra nova) per a més detalls.


Avui llancem una vista prèvia de recerca de Codex: un agent d’enginyeria de programari basat en el núvol que pot treballar en moltes tasques en paral·lel. Codex pot fer per tu tasques com escriure funcionalitats, respondre preguntes sobre la teva base de codi, corregir errors i proposar sol·licituds d'extracció per a revisió; cada tasca s’executa en el seu propi entorn sandbox al núvol, precarregat amb el teu repositori.

Codex funciona amb codex-1, una versió d’OpenAI o3 optimitzada per a l’enginyeria de programari. Es va entrenar amb aprenentatge per reforç sobre tasques de codificació del món real en diversos entorns per generar codi que reflecteixi de prop l’estil humà i les preferències de PR, s’adhereixi amb precisió a les instruccions i pugui executar proves de manera iterativa fins a obtenir un resultat satisfactori. Avui comencem a desplegar Codex per als usuaris de ChatGPT Pro, Enterprise i Business, i el suport per a Plus i Edu arribarà aviat.

Com funciona Codex

Avui pots accedir a Codex des de la barra lateral de ChatGPT i assignar-li noves tasques de codificació escrivint una indicació i fent clic a «Code». Si vols fer a Codex una pregunta sobre la teva base de codi, fes clic a «Ask». Cada tasca es processa de manera independent en un entorn separat i aïllat precarregat amb la teva base de codi. Codex pot llegir i editar fitxers, així com executar ordres, inclosos harnesses de proves, linters i verificadors de tipus. Completar una tasca sol trigar entre 1 i 30 minuts, segons la complexitat, i pots supervisar el progrés de Codex en temps real.

Quan Codex completa una tasca, confirma els seus canvis al seu entorn. Codex proporciona proves verificables de les seves accions mitjançant cites de registres de terminal i sortides de proves, cosa que et permet rastrejar cada pas fet durant la finalització de la tasca. Després pots revisar els resultats, sol·licitar més revisions, obrir una sol·licitud d'extracció a GitHub o integrar directament els canvis al teu entorn local. Al producte, pots configurar l’entorn de Codex perquè coincideixi tant com sigui possible amb el teu entorn de desenvolupament real.

Codex es pot guiar amb fitxers AGENTS.md col·locats dins del teu repositori. Són fitxers de text, semblants a README.md, on pots indicar a Codex com navegar per la teva base de codi, quines ordres executar per fer proves i com adherir-se millor a les pràctiques estàndard del teu projecte. Igual que els desenvolupadors humans, els agents Codex rendeixen millor quan se’ls proporcionen entorns de desenvolupament configurats, configuracions de proves fiables i documentació clara. 

En avaluacions de codificació i benchmarks interns, codex-1 mostra un rendiment sòlid fins i tot sense fitxers AGENTS.md ni esquelets personalitzats.

Es van excloure 23 mostres de SWE-Bench Verified que no es podien executar a la nostra infraestructura interna. codex-1 es va provar amb una longitud màxima de context de 192k segments i un «esforç de raonament» mitjà, que és la configuració que estarà disponible avui al producte. Per a més detalls sobre les avaluacions d’o3, consulta aquí.

El nostre benchmark intern de tasques SWE és un conjunt seleccionat de tasques SWE internes del món real a OpenAI.

Construint agents segurs i fiables

Llançem Codex com una vista prèvia de recerca, en línia amb la nostra estratègia de desplegament iteratiu. Vam prioritzar la seguretat i la transparència en dissenyar Codex perquè els usuaris puguin verificar-ne les sortides, una salvaguarda que esdevé cada vegada més important a mesura que els models d’IA gestionen de manera independent tasques de codificació més complexes i evolucionen les consideracions de seguretat. Els usuaris poden comprovar la feina de Codex mitjançant cites, registres de terminal i resultats de proves. Quan hi ha incertesa o es troba davant de proves fallides, l’agent Codex comunica explícitament aquests problemes, cosa que permet als usuaris prendre decisions informades sobre com procedir. Tot i així, continua sent essencial que els usuaris revisin i validin manualment tot el codi generat per l’agent abans de la integració i l’execució.

Code-review screenshot with a test-file overlay verifying quoted filenames, plus summary and passing tests on a blue backdrop.
Code-review screenshot with a black terminal overlay showing one passing test for quoted filenames; summary and diff of the ‘Fix /diff error with special characters’ change visible on a blue-pastel background.

Alineació amb les preferències humanes

Un objectiu principal durant l’entrenament de codex-1 era alinear les sortides estretament amb les preferències i els estàndards humans de codificació. En comparació amb OpenAI o3, codex-1 produeix de manera consistent pedaços més nets, preparats per a una revisió humana immediata i la integració en fluxos de treball estàndard.

Please fix the following issue in the astropy/astropy repository. Please resolve the issue in the problem below by editing and testing code files in your current code execution session. The repository is cloned in the /testbed folder. You must fully solve the problem for your answer to be considered correct. Problem statement:Modeling's `separability_matrix` does not compute separability correctly for nested CompoundModels Consider the following model: ```python from astropy.modeling import models as m from astropy.modeling.separable import separability_matrix cm = m.Linear1D(10) & m.Linear1D(5) ``` It's separability matrix as you might expect is a diagonal: ```python >>> separability_matrix(cm) array([[ True, False], [False, True]]) ``` If I make the model more complex: ```python >>> separability_matrix(m.Pix2Sky_TAN() & m.Linear1D(10) & m.Linear1D(5)) array([[ True, True, False, False], [ True, True, False, False], [False, False, True, False], [False, False, False, True]]) ``` The output matrix is again, as expected, the outputs and inputs to the linear models are separable and independent of each other. If however, I nest these compound models: ```python >>> separability_matrix(m.Pix2Sky_TAN() & cm) array([[ True, True, False, False], [ True, True, False, False], [False, False, True, True], [False, False, True, True]]) ``` Suddenly the inputs and outputs are no longer separable? This feels like a bug to me, but I might be missing something?
Codex
OpenAI o3

Prevenció d’abusos

Protegir-se contra aplicacions malicioses de l’enginyeria de programari impulsada per IA, com ara el desenvolupament de programari maliciós, és cada vegada més crític. Al mateix temps, és important que les mesures de protecció no obstaculitzin indegudament aplicacions legítimes i beneficioses que poden implicar tècniques que de vegades també s’utilitzen per desenvolupar programari maliciós, com ara l’enginyeria de nucli de baix nivell.

Per equilibrar seguretat i utilitat, Codex s’ha entrenat per identificar i refusar amb precisió sol·licituds orientades al desenvolupament de programari maliciós, tot distingint clarament i donant suport a les tasques legítimes. També hem reforçat els nostres marcs de polítiques i incorporat avaluacions de seguretat rigoroses per reforçar eficaçment aquests límits. Hem publicat un annex a la fitxa del model d’o3 per reflectir aquestes avaluacions.

Execució segura

L’agent Codex opera completament dins d’un contenidor segur i aïllat al núvol. Durant l’execució de tasques, l’accés a internet està desactivat, cosa que limita la interacció de l’agent únicament al codi proporcionat explícitament mitjançant repositoris de GitHub i dependències preinstal·lades configurades per l’usuari mitjançant un script de configuració. L’agent no pot accedir a llocs web externs, API ni altres serveis.

Casos d’ús inicials

Els equips tècnics d’OpenAI han començat a utilitzar Codex com a part del seu conjunt d’eines diari. OpenAI l’utilitza més sovint per descarregar tasques repetitives i ben delimitades, com ara refactorització, canvi de noms i escriptura de proves, que altrament trencarien la concentració. És igualment útil per crear l’esquelet de noves funcionalitats, connectar components, corregir errors i redactar documentació. Els equips estan construint nous hàbits al seu voltant: triant problemes de guàrdia, planificant tasques a l’inici del dia i descarregant feina en segon pla per continuar avançant. En reduir els canvis de context i fer aflorar tasques pendents oblidades, Codex ajuda els enginyers a publicar més ràpid i a mantenir el focus en allò que més importa.

Abans del llançament, també hem estat treballant amb un petit grup de verificadors externs per entendre millor com funciona Codex en bases de codi, processos de desenvolupament i equips diversos.

  • Cisco(s'obre en una finestra nova) està explorant com Codex pot ajudar els seus equips d’enginyeria a fer realitat idees ambicioses més ràpidament. Com a socis de disseny inicials, Cisco està ajudant a donar forma al futur de Codex avaluant-lo per a casos d’ús reals de la seva cartera de productes i proporcionant comentaris a l’equip d’OpenAI.
  • Temporal(s'obre en una finestra nova) utilitza Codex per accelerar el desenvolupament de funcionalitats, depurar problemes, escriure i executar proves, i refactoritzar grans bases de codi. També els ajuda a mantenir-se concentrats executant tasques complexes en segon pla, mantenint els enginyers en flux mentre s’accelera la iteració.
  • Superhuman(s'obre en una finestra nova) utilitza Codex per accelerar tasques petites però repetitives com millorar la cobertura de proves i corregir errors d’integració. També els ajuda a publicar més ràpid en permetre que els gestors de producte contribueixin amb canvis lleugers de codi sense recórrer a un enginyer, excepte per a la revisió de codi.
  • Kodiak(s'obre en una finestra nova) està utilitzant Codex per ajudar a escriure eines de depuració, millorar la cobertura de proves i refactoritzar codi, accelerant el desenvolupament de Kodiak Driver, la seva tecnologia de conducció autònoma. Codex també s’ha convertit en una eina de referència valuosa, ajudant els enginyers a entendre parts desconegudes de la pila mostrant context rellevant i canvis anteriors.

A partir del que hem après dels primers verificadors, recomanem assignar tasques ben delimitades a diversos agents simultàniament i experimentar amb diferents tipus de tasques i indicacions per explorar eficaçment les capacitats del model.

Actualitzacions de Codex CLI

El mes passat, vam llançar Codex CLI, un agent de codificació lleuger i de codi obert que s’executa al teu terminal. Porta la potència de models com o3 i o4-mini al teu flux de treball local, i facilita treballar-hi en parella per completar tasques més de pressa. 

Avui també llancem una versió més petita de codex-1, una versió d’o4-mini dissenyada específicament per usar-se a Codex CLI. Aquest nou model admet fluxos de treball més ràpids a la CLI i està optimitzat per a preguntes i respostes sobre codi i edició de baixa latència, tot mantenint els mateixos punts forts en seguiment d’instruccions i estil. Ja està disponible com a model predeterminat a Codex CLI i a l’API com a codex-mini-latest. La instantània subjacent s’actualitzarà regularment a mesura que continuem millorant el model Codex-mini.

També estem fent molt més fàcil connectar el teu compte de desenvolupador a Codex CLI. En lloc de generar i configurar manualment un segment d’API, ara pots iniciar sessió amb el teu compte de ChatGPT i seleccionar l’organització de l’API que vols utilitzar. Generarem i configurarem automàticament la clau d’API per a tu. Els usuaris de Plus i Pro que iniciïn sessió a Codex CLI amb ChatGPT també podran començar a bescanviar 5 $ i 50 $ en crèdits gratuïts d’API, respectivament, més tard avui i durant els propers 30 dies.

Disponibilitat, preus i limitacions de Codex

A partir d’avui, estem desplegant Codex per als usuaris de ChatGPT Pro, Enterprise i Business a escala global, i el suport per a Plus i Edu arribarà aviat. Els usuaris tindran un accés generós sense cap cost addicional durant les properes setmanes perquè pugueu explorar què pot fer Codex; després, desplegarem un accés limitat per tarifa i opcions de preus flexibles que us permetran comprar ús addicional sota demanda. Tenim previst ampliar aviat l’accés als usuaris de Plus i Edu.

Per als desenvolupadors que construeixen amb codex-mini-latest, el model està disponible a la Responses API i té un preu d’1,50 $ per cada 1 M de segments d’entrada i 6 $ per cada 1 M de segments de sortida, amb un descompte del 75% per a la memòria cau d’indicacions.

Codex encara es troba en una fase inicial del seu desenvolupament. Com a vista prèvia de recerca, actualment no té funcions com entrades d’imatge per al treball de frontend ni la capacitat de reorientar l’agent mentre està treballant. A més, delegar a un agent remot triga més que l’edició interactiva, i pot requerir una mica d’adaptació. Amb el temps, interactuar amb agents Codex s’assemblarà cada vegada més a una col·laboració asíncrona amb companys. A mesura que avancin les capacitats del model, preveiem que els agents gestionin tasques més complexes durant períodes més llargs.

Què ve després

Imaginem un futur en què els desenvolupadors impulsin la feina que volen assumir i deleguin la resta als agents, avançant més ràpid i sent més productius amb la IA. Per aconseguir-ho, estem construint un conjunt d’eines Codex que donen suport tant a la col·laboració en temps real com a la delegació asíncrona. 

Treballar en parella amb eines d’IA com Codex CLI i altres s’ha convertit ràpidament en una norma del sector, ajudant els desenvolupadors a avançar més de pressa mentre programen. Però creiem que el flux de treball asíncron i multiagent introduït per Codex a ChatGPT es convertirà en la manera de facto en què els enginyers produeixen codi d’alta qualitat.

En última instància, veiem convergir aquests dos modes d’interacció —treball en parella en temps real i delegació de tasques—. Els desenvolupadors col·laboraran amb agents d’IA als seus IDE i eines quotidianes per fer preguntes, rebre suggeriments i descarregar tasques més llargues, tot dins d’un flux de treball unificat.

Mirant endavant, tenim previst introduir fluxos de treball d’agent més interactius i flexibles. Aviat els desenvolupadors podran proporcionar orientació a mitja tasca, col·laborar en estratègies d’implementació i rebre actualitzacions proactives del progrés. També imaginem integracions més profundes amb les eines que ja utilitzes: avui Codex es connecta amb GitHub, i aviat podràs assignar tasques des de Codex CLI, ChatGPT Desktop o fins i tot eines com el teu gestor d’incidències o sistema de CI.

L’enginyeria de programari és una de les primeres indústries a experimentar guanys significatius de productivitat impulsats per la IA, obrint noves possibilitats per a persones i equips petits. Tot i que som optimistes sobre aquests guanys, també col·laborem amb socis per entendre millor les implicacions de l’adopció generalitzada d’agents en els fluxos de treball dels desenvolupadors, el desenvolupament d’habilitats entre persones, nivells d’habilitat i geografies. 

Això només és el començament, i tenim moltes ganes de veure què construeixes amb Codex.

Repetició del directe

Apèndix

Missatge del sistema

Compartim el missatge del sistema de codex-1 per ajudar els desenvolupadors a entendre el comportament predeterminat del model i adaptar Codex perquè funcioni eficaçment en fluxos de treball personalitzats. Per exemple, el missatge del sistema de codex-1 anima Codex a executar totes les proves esmentades al fitxer AGENTS.md, però si tens poc temps, pots demanar a Codex que ometi aquestes proves.

1
# Instructions
2
- The user will provide a task.
3
- The task involves working with Git repositories in your current working directory.
4
- Wait for all terminal commands to be completed (or terminate them) before finishing.
5

6
# Git instructions
7
If completing the user's task requires writing or modifying files:
8
- Do not create new branches.
9
- Use git to commit your changes.
10
- If pre-commit fails, fix issues and retry.
11
- Check git status to confirm your commit. You must leave your worktree in a clean state.
12
- Only committed code will be evaluated.
13
- Do not modify or amend existing commits.
14

15
# AGENTS.md spec
16
- Containers often contain AGENTS.md files. These files can appear anywhere in the container's filesystem. Typical locations include `/`, `~`, and in various places inside of Git repos.
17
- These files are a way for humans to give you (the agent) instructions or tips for working within the container.
18
- Some examples might be: coding conventions, info about how code is organized, or instructions for how to run or test code.
19
- AGENTS.md files may provide instructions about PR messages (messages attached to a GitHub Pull Request produced by the agent, describing the PR). These instructions should be respected.
20
- Instructions in AGENTS.md files:
21
- The scope of an AGENTS.md file is the entire directory tree rooted at the folder that contains it.
22
- For every file you touch in the final patch, you must obey instructions in any AGENTS.md file whose scope includes that file.
23
- Instructions about code style, structure, naming, etc. apply only to code within the AGENTS.md file's scope, unless the file states otherwise.
24
- More-deeply-nested AGENTS.md files take precedence in the case of conflicting instructions.
25
- Direct system/developer/user instructions (as part of a prompt) take precedence over AGENTS.md instructions.
26
- AGENTS.md files need not live only in Git repos. For example, you may find one in your home directory.
27
- If the AGENTS.md includes programmatic checks to verify your work, you MUST run all of them and make a best effort to validate that the checks pass AFTER all code changes have been made.
28
- This applies even for changes that appear simple, i.e. documentation. You still must run all of the programmatic checks.
29

30
# Citations instructions
31
- If you browsed files or used terminal commands, you must add citations to the final response (not the body of the PR message) where relevant. Citations reference file paths and terminal outputs with the following formats:
32
1) `【F:<file_path>†L<line_start>(-L<line_end>)?】`
33
- File path citations must start with `F:`. `file_path` is the exact file path of the file relative to the root of the repository that contains the relevant text.
34
- `line_start` is the 1-indexed start line number of the relevant output within that file.
35
2) `【<chunk_id>†L<line_start>(-L<line_end>)?】`
36
- Where `chunk_id` is the chunk_id of the terminal output, `line_start` and `line_end` are the 1-indexed start and end line numbers of the relevant output within that chunk.
37
- Line ends are optional, and if not provided, line end is the same as line start, so only 1 line is cited.
38
- Ensure that the line numbers are correct, and that the cited file paths or terminal outputs are directly relevant to the word or clause before the citation.
39
- Do not cite completely empty lines inside the chunk, only cite lines that have content.
40
- Only cite from file paths and terminal outputs, DO NOT cite from previous pr diffs and comments, nor cite git hashes as chunk ids.
41
- Use file path citations that reference any code changes, documentation or files, and use terminal citations only for relevant terminal output.
42
- Prefer file citations over terminal citations unless the terminal output is directly relevant to the clauses before the citation, i.e. clauses on test results.
43
- For PR creation tasks, use file citations when referring to code changes in the summary section of your final response, and terminal citations in the testing section.
44
- For question-answering tasks, you should only use terminal citations if you need to programmatically verify an answer (i.e. counting lines of code). Otherwise, use file citations.

Autor

OpenAI