Přeskoč na hlavní obsah
OpenAI

16. května 2025

VydáníProdukt

Představujeme Codex

Cloudový agent pro softwarové inženýrství, který může pracovat na mnoha úkolech současně, poháněný systémem codex-1. Dnes k dispozici uživatelům ChatGPT Pro, Business a Enterprise, a brzy i uživatelům 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.
Načítání…

Aktualizace 3. června 2025: Codex je nyní dostupný uživatelům ChatGPT Plus. Také umožňujeme uživatelům poskytnout Codexu přístup k internetu během provádění úkolů. Další informace jsou uvedeny v přehledu změn(otevře se v novém okně) a dokumentaci(otevře se v novém okně).


Dnes spouštíme náhled výzkumné verze Codex: cloudového agenta pro softwarové inženýrství, který může pracovat na mnoha úkolech současně. Codex pro tebe může vykonávat úkoly, jako je psaní funkcí, odpovídání na otázky ohledně tvého kódu, oprava chyb a navrhování žádostí o kontrolu; každý úkol běží ve svém vlastním cloudovém pískovišti předem nahraném tvým repozitářem.

Codex je poháněn systémem codex-1, verzí OpenAI o3 optimalizovanou pro softwarové inženýrství. Byl vyškolen posilovací výukou na reálných úkolech programování v různých prostředích, aby vytvořil kód, který úzce odráží lidský styl a preference PR, přesně dodržuje pokyny a může iterativně spouštět testy, dokud nedosáhne úspěšného výsledku. Dnes začínáme zavádět Codex do modelů ChatGPT Pro, Enterprise a Business, přičemž podpora verzí Plus a Edu bude brzy k dispozici.

Jak Codex funguje

Dnes lze přistupovat k modelu Codex přes postranní panel v ChatGPT a přiřadit mu nové úkoly zadáním výzvy a kliknutím na „Kód“. Pokud chceš modulu Codex položit otázku ohledně své kódové základny, klikni na „Zeptat se“. Každý úkol se zpracovává nezávisle v samostatném, izolovaném prostředí s předem načtenou tvojí kódovou základnou. Codex může číst a upravovat soubory a také spouštět příkazy včetně testovacích nástrojů, linterů a kontrol typů. Podle složitosti trvá dokončení úkolu obvykle mezi 1 a 30 minutami a můžeš sledovat postup modulu Codex v reálném čase.

Jakmile Codex dokončí úkol, potvrdí změny ve svém prostředí. Codex poskytuje ověřitelné důkazy o svých akcích prostřednictvím citací terminálových protokolů a výstupů testů, což umožňuje sledovat během plnění úkolu každý krok. Poté můžeš zkontrolovat výsledky, požádat o další revize, otevřít žádost o změny v modulu GitHub nebo změny přímo integrovat do svého lokálního prostředí. V produktu si můžeš nakonfigurovat prostředí Codex tak, aby co nejvíce odpovídalo tvému reálnému vývojovému prostředí.

Codex může být řízen soubory AGENTS.md umístěnými ve tvém repozitáři. Jedná se o textové soubory, podobné README.md, kde můžeš Codex informovat, jak se orientovat ve tvé kódové základně, jaké příkazy spustit při testování a jak nejlépe dodržovat standardní postupy tvého projektu. Stejně jako lidští vývojáři fungují agenti Codex nejlépe, když mají k dispozici nakonfigurovaná vývojová prostředí, spolehlivá testovací nastavení a jasnou dokumentaci. 

Při hodnocení kódů a v interních srovnávacích testech vykazuje Codex-1 silný výkon i bez souborů AGENTS.md nebo vlastního uspořádání.

23 vzorků ověřených SWE-Bench, které nebylo možné spustit v naší interní infrastruktuře, bylo vyloučeno. codex-1 byl testován s maximální kontextovou délkou 192 tisíc tokenů a středním 'úsilím odůvodňování', což je nastavení, které dnes bude v produktu dostupné. Podrobnosti o hodnocení o3 najdeš zde.

Náš interní srovnávací test pro úkoly SWE je pečlivě vybraná sada interních úkolů z reálného světa ve společnosti OpenAI.

Vytváření bezpečných a důvěryhodných agentů

V souladu s naší strategií iterativního nasazení vydáváme Codex jako náhled pro výzkumné pracovníky. Při navrhování modulu Codex jsme kladli důraz na bezpečnost a transparentnost, aby si uživatelé mohli ověřit jeho výstupy – ochrana, která je stále důležitější, jak modely AI samostatně řeší složitější úkoly a bezpečnostní úvahy se vyvíjejí. Uživatelé mohou zkontrolovat práci modulu Codex použitím citací, protokolů terminálu a výsledků testů. Když si agent modulu Codex není jistý nebo se setkává s chybami testu, výslovně sděluje tyto problémy, což uživatelům umožňuje činit informovaná rozhodnutí o tom, jak postupovat. Před integrací a spuštěním kódu vytvořeným agentem je stále nezbytné, aby uživatelé ručně kontrolovali a ověřovali veškerý kód.

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.

Slaďování s lidskými preferencemi

Hlavním cílem při školení codex-1 bylo úzce sladit výstupy s preferencemi a standardy lidského programování. Ve srovnání s OpenAI o3 vytváří codex-1 důsledně čistší opravy připravené k okamžité kontrole lidmi a k začlenění do standardních pracovních postupů.

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

Prevence zneužívání

Důležitost ochrany před škodlivými aplikacemi softwarového inženýrství řízeného umělou inteligencí, jako je vývoj malwaru, neustále roste. Zároveň je důležité, aby ochranná opatření nebránila legitimním a prospěšným aplikacím, které mohou zahrnovat techniky někdy používané i k vývoji malwaru, jako je například nízkoúrovňový vývoj jádra.

Aby byla zajištěna rovnováha mezi bezpečností a užitečností, byl modul Codex vyškolen k identifikaci a přesnému odmítání žádostí zaměřených na vývoj škodlivého softwaru, přičemž jasně rozlišuje a podporuje legitimní úkoly. Také jsme vylepšili naše rámcové zásady a začlenili přísná bezpečnostní hodnocení, abychom tyto hranice účinně posílili. Zveřejnili jsme dodatek k systémové kartě o3, který odráží tato hodnocení.

Bezpečné provádění

Agent Codex funguje výhradně v zabezpečeném, izolovaném kontejneru v cloudu. Během vykonávání úkolu je přístup k internetu vypnutý, což omezuje interakci agenta pouze na kód explicitně poskytovaný prostřednictvím GitHub repozitářů a předinstalované závislosti, které uživatel konfiguruje pomocí nastavovacího skriptu. Agent nemůže přistupovat k externím webům, API ani jiným službám.

Počáteční případy použití

Technické týmy v OpenAI začaly používat model Codex jako součást svého každodenního nástroje. Nejčastěji ho používají inženýři OpenAI k uvolnění opakujících se, dobře definovaných úkolů, jako je refaktorování, přejmenovávání a psaní testů, které by jinak narušily soustředění. Při vytváření nových funkcí, propojování komponent, opravování chyb a tvorbě dokumentace je stejně užitečný. Týmy si vytvářejí nové návyky: třídí problémy v pohotovostním režimu, plánují úkoly na začátku dne a přenechávají práci na pozadí, aby zůstaly v pohybu. Tím, že Codex snižuje přepínání kontextu a zobrazuje zapomenuté úkoly, pomáhá technikům rychleji dodávat výsledky a soustředit se na to, co je nejdůležitější.

Před vydáním jsme také spolupracovali s malou skupinou externích testerů, abychom lépe pochopili, jak Codex funguje v různých kódových základnách, vývojových procesech a týmech.

  • Cisco(otevře se v novém okně) prozkoumává, jak může Codex pomoci jejich inženýrským týmům rychleji realizovat ambiciózní nápady. Jako první návrhářští partneři pomáhá společnost Cisco utvářet budoucnost modulu Codex tím, že ho vyhodnocuje pro případy použití v reálném světě v celém svém produktovém portfoliu a poskytuje zpětnou vazbu týmu OpenAI.
  • Temporal(otevře se v novém okně) využívá Codex k urychlení vývoje funkcí, ladění problémů, psaní a provádění testů a refaktorování rozsáhlých kódových základen. Také jim pomáhá zůstat soustředění tím, že spouští složité úkoly na pozadí – pomáhá technikům držet krok a zároveň zrychluje iteraci.
  • Superhuman(otevře se v novém okně) používá Codex ke zrychlení malých, ale opakujících se úkolů, jako je zlepšení pokrytí testů a oprava selhání integrace. Také jim pomáhá rychleji dodávat výsledek tím, že umožňuje produktovým manažerům přispívat k mírným změnám kódu bez nutnosti zapojení technika s výjimkou kontroly kódu.
  • Kodiak(otevře se v novém okně) využívá Codex k psaní ladicích nástrojů, zlepšování pokrytí testů a refaktorizaci kódu, což urychluje vývoj Kodiak Driver, jejich technologie autonomního řízení. Codex se také stal cenným referenčním nástrojem, který pomáhá technikům porozumět neznámým částem stacku tím, že zobrazuje relevantní kontext a minulé změny.

Na základě poznatků od raných testerů doporučujeme přidělovat dobře definované úkoly více agentům současně a experimentovat s různými typy úkolů a podnětů s cílem efektivně prozkoumat schopnosti modelu.

Aktualizace Codex CLI

Minulý měsíc jsme spustili Codex CLI, odlehčený open-source agent zaměřený na programování, který běží ve tvém terminálu. Do tvého místního pracovního procesu přináší výkonnost modelů jako o3 a o4-mini, což usnadňuje jejich spojení za účelem rychlejšího dokončování úkolů. 

Dnes také vydáváme menší verzi codex-1, verzi o4-mini určenou speciálně k používání v Codex CLI. Tento nový model podporuje rychlejší pracovní postupy v CLI a je optimalizován na nízkolatenční dotazy a úpravy kódu, přičemž si zachovává stejné silné stránky při dodržování instrukcí a stylu. Nyní je k dispozici jako výchozí model v Codex CLI a v API jako codex-mini-latest. Jak budeme pokračovat ve zlepšování modelu Codex-mini, bude základní snímek pravidelně aktualizován.

Také výrazně usnadňujeme připojení tvého vývojářského účtu ke Codex CLI. Místo ručního vytváření a konfigurace tokenu API se teď můžeš přihlásit prostřednictvím svého účtu ChatGPT a vybrat si organizaci API, kterou chceš použít. Automaticky ti vytvoříme a nakonfigurujeme API klíč. Uživatelé Plus a Pro, kteří se přihlásí do Codex CLI prostřednictvím ChatGPT, mohou také již dnes začít uplatňovat 5 a 50 dolarů v bezplatných API kreditech na následujících 30 dnů.

Dostupnost, stanovení cen a omezení modulu Codex

Od dneška zavádíme Codex pro uživatele ChatGPT Pro, Enterprise a Business po celém světě, přičemž podpora pro Plus a Edu bude brzy následovat. Uživatelé budou mít v nadcházejících týdnech velkorysý přístup bez dalších nákladů, abyste mohli prozkoumat, co Codex umí. Poté zavedeme omezený přístup a pružné stanovení cen, které vám umožní zakoupit další používání na vyžádání. Plánujeme brzy rozšířit přístup pro uživatele Plus a Edu.

Pro vývojáře, kteří pracují s codex-mini-latest, je model dostupný v Responses API a stojí 1,50 USD za 1 milion vstupních tokenů a 6 USD za 1 milion výstupních tokenů, se 75% slevou na ukládání výzev do mezipaměti.

Codex je stále v rané fázi svého vývoje. Jako výzkumný náhled v současné době postrádá funkce, jako jsou vstupy obrázků k práci s frontendem a možnost korigovat agenta během jeho práce. Navíc delegování na vzdáleného agenta trvá déle než interaktivní úpravy, což může chvíli trvat, než si na to zvykneš. Postupem času bude interakce s agenty modelu Codex stále více připomínat asynchronní spolupráci s kolegy. Jak se schopnosti modelů zlepšují, očekáváme, že agenti budou zvládat složitější úkoly po delší dobu.

Jaký bude další krok

Představujeme si budoucnost, kde vývojáři řídí práci, kterou chtějí vlastnit, a zbytek přenechávají agentům – s AI se pohybují rychleji a jsou produktivnější. Abychom toho dosáhli, vyvíjíme sadu nástrojů Codex, které poskytují podporu jak spolupráce v reálném čase, tak asynchronního delegování. 

Párování s nástroji AI, jako je Codex CLI a další, se rychle stalo oborovou normou a pomáhá vývojářům programovat rychleji. Ale věříme, že asynchronní, multi-agentní pracovní tok zavedený nástrojem Codex v ChatGPT se stane de facto způsobem, jakým technici vytvářejí vysoce kvalitní kód.

Nakonec vidíme, že tyto dva způsoby interakce – párování v reálném čase a delegování úkolů – se sbližují. Vývojáři budou spolupracovat s AI agenty napříč svými IDE a každodenními nástroji, aby kladli otázky, získávali návrhy a přenechávali delší úkoly, to vše v jednotném pracovním postupu.

Do budoucna plánujeme zavést interaktivnější a pružnější pracovní postupy agentů. Vývojáři budou brzy moci poskytovat pokyny během zpracování úkolu, spolupracovat na implementačních strategiích a dostávat aktivní aktualizace o pokroku. Také si představujeme hlubší integrace napříč nástroji, které už používáš: dnes se Codex připojuje k GitHubu a brzy budeš moci přiřazovat úkoly z Codex CLI, ChatGPT Desktop nebo dokonce nástrojů jako tvůj sledovač problémů nebo CI systém.

Softwarové inženýrství je jedním z prvních odvětví, která díky umělé inteligenci zažívají významné zvýšení produktivity, což otevírá nové možnosti pro jednotlivce a malé týmy. I když jsme ohledně těchto přínosů optimističtí, spolupracujeme také s partnery, abychom lépe pochopili důsledky širokého zavádění agentů na pracovní postupy vývojářů, rozvoj dovedností mezi lidmi, úrovněmi dovedností a geografickými oblastmi. 

Tohle je jen začátek – a těšíme se, co s nástrojem Codex vytvoříš.

Záznam živého vysílání

Příloha

Systémová zpráva

Sdílíme systémovou zprávu codex-1, abychom vývojářům pomohli pochopit výchozí chování modelu a přizpůsobit Codex tak, aby efektivně fungoval v přizpůsobených pracovních postupech. Například systémová zpráva codex-1 doporučuje modelu Codex spustit všechny testy uvedené v souboru AGENTS.md, ale pokud máš málo času, můžeš požádat Codex, aby tyto testy přeskočil.

Prostý text

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