Vai al contenuto principale
OpenAI

16 maggio 2025

VersioneProdotto

Ti presentiamo Codex

Un agente di ingegneria del software basato sul cloud e supportato da codex-1, in grado di svolgere numerose attività in parallelo. Disponibile da oggi per gli utenti ChatGPT Pro, Team ed Enterprise, presto anche per gli utenti Plus.

Dashboard con la domanda “What should we code next?”, un riquadro per l’inserimento dei prompt, selettori di repository/rami e un elenco di attività su uno sfondo pastello con del codice.
Caricamento in corso...

Aggiornamento del 3 giugno 2025: Il Codex è ora disponibile per gli utenti di ChatGPT Plus. Stiamo inoltre permettendo agli utenti di fornire a Codex l'accesso a Internet durante l'esecuzione delle attività. Consulta il changelog(si apre in una nuova finestra) e la documentazione(si apre in una nuova finestra) per maggiori dettagli.


Oggi lanciamo un'anteprima di ricerca di Codex, un agente di ingegneria del software basato sul cloud in grado di svolgere numerose attività in parallelo. Codex esegue per te attività come scrivere funzionalità, rispondere a domande sul codebase, correggere bug e proporre richieste pull per la revisione: ogni attività viene eseguita in un ambiente sandbox cloud isolato, con il tuo repository precaricato.

Codex è basato su codex-1, una versione di OpenAI o3 ottimizzata per l’ingegneria del software. È stato addestrato tramite apprendimento per rinforzo su attività di codifica reali in diversi ambienti al fine di generare codice che rispecchia fedelmente lo stile umano e le preferenze nelle richieste pull. Segue con precisione le istruzioni ed è in grado di eseguire test iterativi fino a ottenere un risultato positivo. Stiamo distribuendo Codex agli utenti ChatGPT Pro, Enterprise e Team e presto anche agli utenti Plus ed Edu.

Come funziona Codex

Puoi accedere a Codex direttamente dalla barra laterale di ChatGPT e assegnargli nuove attività di codifica digitando un prompt e cliccando su "Codice". Se invece desideri porre a Codex una domanda sul codebase, clicca su "Chiedi". Ciascuna attività viene elaborata in modo indipendente in un ambiente separato e isolato con il tuo codebase precaricato. Codex è in grado di leggere e modificare file, oltre a eseguire comandi come test harness, linter e type checker. Il completamento di un'attività richiede generalmente tra 1 e 30 minuti, a seconda della complessità, e puoi monitorare i progressi di Codex in tempo reale.

Al termine dell'attività, Codex applica le modifiche nel suo ambiente. Codex fornisce prove verificabili delle sue azioni tramite citazioni di log del terminale e output di test, permettendoti così di seguire ogni passaggio dell'attività. A questo punto puoi rivedere i risultati, richiedere ulteriori revisioni, aprire una richiesta pull su GitHub oppure integrare direttamente le modifiche nel tuo ambiente locale. All'interno del prodotto puoi configurare l’ambiente di Codex affinché rispecchi il più possibile il tuo ambiente di sviluppo reale.

Codex può essere guidato tramite file AGENTS.md collocati all’interno del tuo repository. Si tratta di file di testo simili ai README.md nei quali puoi indicare a Codex come orientarsi nel codebase, quali comandi eseguire per i test e come attenersi al meglio alle pratiche standard del tuo progetto. Proprio come degli sviluppatori umani, gli agenti Codex lavorano al meglio se dotati di ambienti di sviluppo configurati, sistemi di test affidabili e documentazione chiara. 

Nelle valutazioni di codifica e nei benchmark interni, codex-1 dimostra ottime prestazioni anche senza file AGENTS.md o scaffold personalizzati.

Sono stati esclusi 23 campioni di SWE-Bench Verified che non erano eseguibili sulla nostra infrastruttura interna. codex-1 è stato testato con una lunghezza di contesto massima di 192.000 token e un livello medio di “sforzo di ragionamento”, impostazione che sarà disponibile nel prodotto a partire da oggi. Qui trovi maggiori informazioni sulle valutazioni di o3.

Il nostro benchmark interno di attività di ingegneria del software (SWE) è un set selezionato di attività reali di ingegneria del software utilizzate internamente da OpenAI.

Sviluppo di agenti sicuri e affidabili

Rilasciamo Codex in anteprima di ricerca, in linea con la nostra strategia di implementazione iterativa. Nel progettare Codex abbiamo dato priorità alla sicurezza e alla trasparenza in modo che gli utenti possano verificarne gli output, una misura di sicurezza sempre più importante man mano che i modelli di IA affrontano in autonomia attività di codifica più complesse e le considerazioni sulla sicurezza si evolvono. Gli utenti possono verificare il lavoro di Codex tramite citazioni, log del terminale e risultati di test. In caso di incertezze o di esiti negativi nei test, l’agente Codex comunica esplicitamente queste problematiche, permettendo agli utenti di prendere decisioni informate sul da farsi. Resta comunque fondamentale che gli utenti rivedano e convalidino manualmente tutto il codice generato dagli agenti prima di integrarlo ed eseguirlo.

Screenshot di una revisione del codice con sovrapposizione di un file di test che verifica i nomi dei file citati, oltre a un riepilogo e i test superati su uno sfondo blu.
Screenshot di una revisione del codice con sovrapposizione di un terminale nero che mostra un test superato relativo ai nomi di file citati; riepilogo e differenze della modifica "Fix /diff error with special characters" visibili su uno sfondo blu pastello.

Allineamento alle preferenze umane

Un obiettivo principale durante l’addestramento di codex-1 è stato allineare gli output alle preferenze e agli standard di codifica umani. Rispetto a OpenAI o3, codex-1 produce regolarmente patch più pulite, pronte per una revisione umana immediata e per essere integrate nei flussi di lavoro standard.

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

Prevenzione degli abusi

La protezione contro applicazioni malevoli dell’ingegneria del software basata sull'IA, come lo sviluppo di malware, è sempre più importante. Allo stesso tempo, è fondamentale che le misure di protezione non ostacolino ingiustificatamente applicazioni legittime e utili che possono includere tecniche talvolta utilizzate anche nello sviluppo di malware, come l’ingegneria del kernel a basso livello.

Per bilanciare sicurezza e utilità, Codex è stato addestrato a riconoscere e rifiutare con precisione le richieste volte alla creazione di software dannoso, distinguendo chiaramente e supportando invece le attività legittime. Abbiamo inoltre rafforzato i nostri framework di politiche e incorporato rigorose valutazioni di sicurezza per consolidare efficacemente questi confini. Abbiamo pubblicato un addendum alla Scheda di sistema di o3 per rispecchiare tali valutazioni.

Esecuzione sicura

L’agente Codex opera interamente all’interno di un contenitore sicuro e isolato nel cloud. Durante l’esecuzione delle attività, l’accesso a Internet è disattivato, il che limita le interazioni dell’agente esclusivamente al codice fornito esplicitamente tramite repository GitHub e alle dipendenze preinstallate configurate dall’utente tramite uno script di configurazione. L’agente non può accedere a siti web esterni, API o altri servizi.

Primi casi d’uso

I team tecnici di OpenAI hanno iniziato a utilizzare Codex come parte integrante della loro routine quotidiana. Gli ingegneri di OpenAI lo impiegano soprattutto per delegare attività ripetitive e ben definite, come il refactoring, la rinomina e la scrittura di test, al fine di concentrarsi su altri compiti. È altrettanto utile per creare l’impalcatura di nuove funzionalità, collegare componenti, correggere bug e redigere la documentazione. I team stanno sviluppando nuove abitudini attorno a Codex: gestiscono le segnalazioni in reperibilità, pianificano le attività a inizio giornata e delegano le attività secondarie. Riducendo le interruzioni e riportando alla luce attività dimenticate, Codex aiuta gli ingegneri a svolgere il loro lavoro più rapidamente e a restare concentrati su ciò che conta davvero.

In vista del lancio, abbiamo collaborato con un piccolo gruppo di tester esterni per comprendere meglio le prestazioni di Codex su vari codebase, processi di sviluppo e team.

  • Cisco(si apre in una nuova finestra)⁠ sta esplorando in che modo Codex possa aiutare i suoi team di ingegneria a trasformare idee ambiziose in realtà più rapidamente. In qualità di partner di progettazione iniziale, Cisco contribuisce a plasmare il futuro di Codex valutandone l’applicazione a casi d’uso reali nel proprio portfolio di prodotti e fornendo feedback al team di OpenAI.
  • Temporal(si apre in una nuova finestra)⁠ utilizza Codex per accelerare lo sviluppo di funzioni, risolvere bug, scrivere ed eseguire test ed effettuare il refactoring di grandi codebase. Inoltre, Codex consente al team di mantenere la concentrazione eseguendo in background attività complesse e velocizzando l'iterazione.
  • Superhuman(si apre in una nuova finestra) impiega Codex per velocizzare piccole attività ripetitive, come migliorare la copertura dei test o correggere errori di integrazione. Inoltre, Codex aiuta a ridurre i tempi di lancio permettendo ai responsabili di prodotto di apportare piccole modifiche al codice senza dover coinvolgere un ingegnere, salvo per la revisione.
  • Kodiak(si apre in una nuova finestra)⁠ utilizza Codex per scrivere strumenti di debug, migliorare la copertura dei test ed eseguire il refactoring del codice, accelerando così lo sviluppo del Kodiak Driver, la loro tecnologia di guida automatica. Codex è diventato anche un utile strumento di riferimento in quanto aiuta gli ingegneri a comprendere parti sconosciute dello stack mostrando il contesto rilevante e le modifiche precedenti.

Sulla base dell’esperienza con i primi tester, consigliamo di assegnare più attività ben definite a diversi agenti contemporaneamente e di sperimentare con vari tipi di attività e prompt al fine di esplorare al meglio le capacità del modello.

Aggiornamenti a Codex CLI

Lo scorso mese abbiamo lanciato Codex CLI, un agente di codifica leggero e open source che viene eseguito direttamente nel terminale. Questo agente porta la potenza di modelli come o3 e o4-mini all’interno del tuo flusso di lavoro locale e ti permette di collaborare con loro per completare attività più rapidamente. 

Oggi rilasciamo anche una versione più piccola di codex-1, una variante di o4-mini progettata specificamente per l’uso in Codex CLI. Questo nuovo modello supporta flussi di lavoro più rapidi in CLI ed è ottimizzato per attività di domande e risposte e modifica del codice a bassa latenza, pur mantenendo la stessa efficacia nell’esecuzione delle istruzioni e nello stile. È disponibile da subito come modello predefinito in Codex CLI e tramite l'API con il nome codex-mini-latest. La versione sottostante verrà aggiornata periodicamente man mano che miglioriamo il modello Codex-mini.

Stiamo inoltre semplificando la procedura per collegare il tuo account sviluppatore a Codex CLI. Non è più necessario generare e impostare manualmente un token API: ora puoi accedere con il tuo account ChatGPT e selezionare l’organizzazione API da usare. La chiave API verrà generata e configurata automaticamente. A partire da oggi, gli utenti Plus e Pro che accedono a Codex CLI tramite ChatGPT possono riscattare rispettivamente 5 dollari e 50 dollari in crediti API gratuiti, validi per 30 giorni.

Disponibilità, tariffe e limiti di Codex

A partire da oggi, Codex è disponibile per gli utenti ChatGPT Pro, Enterprise e Team in tutto il mondo e presto anche per i piani Plus ed Edu. Gli utenti potranno usufruire di un accesso generoso e senza costi aggiuntivi per le prossime settimane in modo da poter esplorare le potenzialità di Codex. In seguito, introdurremo un accesso con limiti di utilizzo e opzioni di tariffe flessibili con la possibilità di acquistare ulteriore capacità su richiesta. Prevediamo di estendere presto l’accesso anche agli utenti dei piani Plus ed Edu.

Per gli sviluppatori che utilizzano codex-mini-latest, il modello è disponibile tramite l'API Responses al costo di 1,50 dollari per 1 milione di token di input e 6 dollari per 1 milione di token di output, con uno sconto del 75% grazie al caching dei prompt.

Codex è ancora in una fase di sviluppo iniziale. In quanto anteprima di ricerca, al momento non supporta funzionalità come l’input di immagini per lavori frontend né consente di correggere l’agente mentre è in esecuzione. Inoltre, delegare attività a un agente remoto richiede più tempo rispetto alla modifica interattiva, il che potrebbe richiedere un po’ di adattamento. Con il tempo, l’interazione con gli agenti Codex sarà sempre più simile a una collaborazione asincrona tra colleghi. Man mano che le capacità dei modelli si evolvono, prevediamo che gli agenti saranno in grado di gestire attività sempre più complesse e prolungate nel tempo.

Novità

Immaginiamo un futuro in cui gli sviluppatori possono concentrarsi sul lavoro che desiderano gestire direttamente e delegare il resto agli agenti, al fine di lavorare più velocemente e in modo più produttivo grazie all’IA. Per raggiungere questo obiettivo, stiamo sviluppando una suite di strumenti Codex che supportano sia la collaborazione in tempo reale che la delega asincrona. 

L’utilizzo di Codex CLI e altri strumenti di IA è diventato rapidamente uno standard nel settore in quanto aiutano gli sviluppatori a scrivere codice più velocemente. Tuttavia, crediamo che il flusso di lavoro asincrono con più agenti introdotto da Codex in ChatGPT diventerà il metodo standard con cui gli ingegneri produrranno codice di alta qualità.

In definitiva, prevediamo una convergenza di queste due modalità di interazione, la collaborazione in tempo reale e la delega delle attività. Gli sviluppatori collaboreranno con gli agenti IA all’interno dei loro IDE e strumenti quotidiani per porre domande, ricevere suggerimenti e affidare attività più lunghe, il tutto in un flusso di lavoro unificato.

Guardando al futuro, intendiamo introdurre flussi di lavoro più interattivi e flessibili basati su agenti. Gli sviluppatori potranno presto fornire indicazioni durante l’esecuzione delle attività, collaborare sulle strategie di implementazione e ricevere aggiornamenti proattivi sull'avanzamento. Immaginiamo inoltre integrazioni più profonde con gli strumenti già in uso: oggi Codex si collega a GitHub e presto sarà possibile assegnare attività direttamente da Codex CLI, ChatGPT desktop o perfino da strumenti come issue tracker o sistemi di integrazione continua.

L’ingegneria del software è una delle prime industrie a sperimentare notevoli guadagni di produttività basati sull’IA, con nuove possibilità per singoli e piccoli team. Pur mantenendo una visione positiva su questi progressi, stiamo anche collaborando con vari partner per comprendere meglio in che modo l’adozione diffusa degli agenti possa influenzare il lavoro degli sviluppatori, lo sviluppo di competenze e la loro distribuzione tra persone, livelli di esperienza e contesti geografici diversi. 

Questo è solo l’inizio e non vediamo l'ora di vedere cosa svilupperai con Codex.

Registrazione della diretta

Appendice

Messaggio di sistema

Condividiamo il messaggio di sistema di codex-1 per aiutare gli sviluppatori a comprendere il comportamento predefinito del modello e a personalizzare Codex affinché funzioni efficacemente in flussi di lavoro su misura. Ad esempio, il messaggio di sistema di codex-1 incoraggia Codex a eseguire tutti i test indicati nel file AGENTS.md, ma se il tempo a disposizione è limitato, puoi chiedere a Codex di ignorare questi test.

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.

Autore

OpenAI