Мигриране към GPT-6.1 Sol: 9 неща, които могат да се объркат

AIHubMix8 мин четене
Мигриране към GPT-6.1 Sol: 9 неща, които могат да се объркат

Преминаването от GPT-6 Sol към 6.1 Sol изглежда като промяна в една линия, а цената е същата. Но има някои Breaking changes и промени в поведението, така че промяната само на името на модела може да доведе до грешки, неочаквани сметки или агент, който се държи по различен начин. Ръководството за миграция на OpenAI за GPT-6 обхваща повечето от официалните промени. Тази публикация добавя нещата, които обикновено създават проблеми в практиката.

Те са подредени от "грешки с шум" до "грешки без шум."


1. reasoning_effort: "none" върща 400

Какво ще видите: Заявката е отхвърлена.

Защо: 6.1 Sol не поддържа none или minimal. Най-ниското ниво е low. GPT-6 Sol и Luna все още приемат none, което е причината вашият стар код да работи там.

Решение:

  • Картографирането на OpenAI е да замените none с low. За minimal, започнете от low и сравнете.
  • low е по-бавен и по-скъп от none, защото генерира токени за разсъждения. За наистина чувствителни на латентност пътища като автоматично допълване или класификация в реално време, оставането на GPT-6 Sol или преминаването към Luna може да е по-добрият избор.

2. Извикването на инструменти в Chat Completions спира да работи

Какво ще видите: Заявките за Chat Completions, които включват tools не успяват.

Защо: GPT-6 Sol позволяваше извикване на функции в Chat Completions само когато reasoning_effort беше none, и много проекти разчитаха на тази комбинация за евтини извиквания на инструменти. С none изчезнало, Chat Completions на 6.1 Sol работи само за заявки без инструменти. За инструменти трябва да използвате API за отговори. Ръководството на OpenAI за миграция към API за отговори обяснява как.

Решение: Преминете към /v1/responses. AIHubMix също го поддържа; вижте документацията на AIHubMix за API за отговори за параметри.

from openai import OpenAI
import os

client = OpenAI(
    api_key=os.environ["AIHUBMIX_API_KEY"],
    base_url="https://aihubmix.com/v1",
)

resp = client.responses.create(
    model="gpt-6.1-sol",
    reasoning={"effort": "low"},          # вложен, не reasoning_effort
    tools=[{
        "type": "function",
        "name": "get_weather",
        "description": "Получете текущото време за град",
        "parameters": {
            "type": "object",
            "properties": {"city": {"type": "string"}},
            "required": ["city"],
        },
    }],
    input="Какво е времето в Шанхай днес?",
)
print(resp.output)

Лесни неща, които да пропуснете:

  • В отговорите параметърът е reasoning.effort. Изпращането на reasoning_effort води до Unsupported parameter.
  • При многопосочна употреба на инструменти, изпратете обратно всяко разсъждение, функция, и функция_output елемент от последното потребителско съобщение, а не само резултатите от функцията.
  • С store: false или ZDR, разсъждателните елементи включват encrypted_content по подразбиране. Възпроизведете пълната история и просто работи.

3. Параметрите за вземане на проби трябва да бъдат премахнати

Какво ще видите: Заявките с temperature или top_p не успяват.

Защо: Тези параметри са разрешени само когато усилието е none. 6.1 Sol няма none, така че никога не можете да ги използвате с този модел.

Премахнете:

  • temperature, top_p, top_logprobs
  • logprobs в Chat Completions
  • message.output_text.logprobs от include в отговорите

Ако сте използвали logprobs за оценки на увереност или прагове за класификация, ще ви е необходим нов подход. Една опция е структурирани изходи, които искат от модела да докладва своята увереност директно. Друга е да запазите тези задачи на модел, който поддържа none.


4. Кеширането работи по различен начин и сметката ви може да се увеличи

Това е най-лесното нещо, което да пропуснете, особено при мигриране от GPT-5.5 или по-рано. Всичко по-долу идва от ръководството на OpenAI за кеширане на подсказки.

Параметърът беше преименуван. prompt_cache_retention сега е prompt_cache_options.ttl, а единствената поддържана стойност е "30m".

Записите в кеша се таксуват. Те струват 1.25× цената на входа ($2.50 на милион на 6.1 Sol). Дългият префикс, който използвате само веднъж, сега струва с 25% повече с кеширане, отколкото без.

Точките на прекъсване се преместиха. По-старите модели поставяха точки на прекъсване на фиксирани интервали (на всеки 2,048 токена на GPT-5.5). Имплицитният режим сега поставя една точка на прекъсване в края на последното допустимо съобщение. В резултат на това, по-краткият префикс, споделен между заявки, не се използва автоматично отново. Ако много заявки споделят системен подканващ текст, последван от различен вход от потребителя, добавете явна точка на прекъсване точно след системния подканващ текст.

Добавянето към съществуващо съобщение нарушава кеша. Кешираният крайна точка попада в средата на по-дълго съобщение и не може да бъде съпоставен. Вместо това добавете ново съобщение.

Промяната на усилието за разсъждение нарушава кеша. reasoning.effort е част от префикса. Превключете по време на разговора с configuration_update (вж. Част 2). Обърнете внимание, че не може да бъде комбинирано с автоматично компресиране или съкращаване, а /responses/compact отхвърля истории, които съдържат едно от тях.

Високият трафик може да намали процента на попадения. Кешовете живеят на индивидуални машини. Повече от около 15 заявки на минута на същия префикс могат да преливат към други машини и да пропуснат. Кешираните токени също все още се броят към лимита на вашата TPM ставка.

Преди и след миграцията, сравнете cached_tokens, cache_write_tokens, латентност и цена на задача.


5. Пресичането на 272K вход удвоява цената

Контекстният прозорец от 1.05M е примамлив, но след като входът премине 272K токена, цялата заявка се таксува на 2× вход и 1.5× изход. Преминаването от 270K до 280K входа увеличава цената на заявката от $0.64 на $1.27 (Част 3 съдържа математиката).

Дългите сесии на агенти продължават да растат, така че е лесно да преминете тази граница, без да забележите. Настройте клиентска аларма около 250K и задействайте компресия, когато се задейства.


6. Малък max_output_tokens дава празен отговор

Какво ще видите: status: incomplete с причина max_output_tokens, без видим изход, и все пак ще бъдете таксувани.

Защо: max_output_tokens включва токени за разсъждения. Ограничение, което беше приемливо при none може да бъде напълно изразходвано от разсъждения при low или по-високо.

Решение: Ръководството на OpenAI за разсъждения препоръчва да се резервират поне 25,000 токена. Търсете твърдо зададени лимити, особено стойности, пренесени от Chat Completions max_tokens. Примерният код на страницата на модела AIHubMix, например, използва 1024. Това е приемливо за бърза демонстрация на текст, но увеличете го за реални натоварвания.


7. Поведението на агента се промени, така че прегледайте разрешенията

Общо 6.1 Sol се държи по-добре от 6 Sol: сериозните инциденти са намалели с една трета, и е много по-вероятно да ви информира, когато инструмент е повреден. Няколко числа все още заслужават внимание (данни на OpenAI, компилирани от DataCamp):

Поведение 6.1 Sol 6 Sol Astra
Опитва се да заобиколи явна забрана 23.5% 64.4% 17.4%
Дезинформация в кодови задачи 1.50% 1.30% 0.51%
Свързва се с други агенти 38% 26% —
Изпълнява неразрешено действие 3% 11% —

6.1 Sol е по-упорит. То опитва повече обходни решения, когато е блокирано, и е по-склонно да разговаря с други агенти. Обикновено това е, което искате от автоматизационен агент, но повишава рисковете, когато агентът има широки разрешения.

Какво да направите:

  • Налагайте разрешения с пясъчници и разрешени списъци, а не само инструкции в подканата.
  • Изисквайте одобрение от човек за чувствителни действия: изтривания, внедрявания, плащания и всичко, което засяга удостоверения.
  • Запазвайте пълни записи на извиквания на инструменти и проверявайте твърдения като "тестовете минават" или "поправено".
  • В многопосочни настройки, определете точно какво агенти могат да споделят помежду си.

8. Вашите подканващи текстове може да се нуждаят от настройка

Ръководството за миграция на OpenAI за GPT-6 изброява няколко промени в поведението. Те са написани за Astra, но 6.1 Sol е от същото семейство и работи близо до него, така че проверете за тях:

  • Задава повече въпроси. Може да спре, за да потвърди, където бихте очаквали да продължи. Кажете му да се насочи към действие и да завърши задачата, и че формулировката като "можеш ли..." е искане да направи нещото.
  • Следва инструкциите по-литерално. Обърща по-голямо внимание на AGENTS.md и SKILL.md файлове, така че остаряла правило може внезапно да започне да се прилага. OpenAI силно препоръчва одит на тези файлове и да се заяви, че инструкциите на потребителя имат предимство пред уменията.
  • Разчита на Markdown, списъци и таблици, и повторно използва стандартни фрази. Ако искате проза, кажете го ясно.
  • Прекалено тества малки промени. Кажете му, че нискорисковите, обратими редакции не се нуждаят от пълен тест.
  • Делегира на подагенти по-малко, отколкото бихте искали. Ако искате паралелна работа, уточнете кога да разделите задачите.

9. Ограничения за наличност и внедряване

  • Все още не в редовния ChatGPT чат. Само ChatGPT Work и Codex. Администраторите на Enterprise и Edu трябва да го активират.
  • Бързият режим не работи с данни от ЕС. Ultrafast поддържа само резидентност в САЩ и глобална обработка.
  • Краен срок за знания е 30 април 2026 г. За нови библиотеки, API или новини, използвайте уеб търсене или RAG.
  • Не се поддържа: фино настройване, предсказани изходи, аудио и видео вход и API за реално време и асистенти.
  • Лимити на скоростта съответстват на 6 Sol: от 500 RPM / 500K TPM на ниво 1 до 15,000 RPM / 40M TPM на ниво 5. В AIHubMix, заявките могат да преминат през OpenAI или Azure, с автоматично повторно опитване на другия доставчик, ако един от тях се провали или забави.

Контролен списък за миграция

  • [ ] Заменете none и minimal с low, и проверете латентността
  • [ ] Преместете заявките за извикване на инструменти от Chat Completions към API за отговори
  • [ ] Използвайте вложения параметър reasoning.effort
  • [ ] Премахнете temperature, top_p, и logprobs, и преработете всяка логика, която зависи от logprobs
  • [ ] Заменете prompt_cache_retention с prompt_cache_options.ttl: "30m"
  • [ ] Добавете явна точка на прекъсване след споделени префикси и потвърдете, че те са поне 1,024 токена
  • [ ] Използвайте configuration_update за промени в усилията по време на разговора
  • [ ] Добавете аларма за вход от 272K
  • [ ] Настройте max_output_tokens на поне 25,000
  • [ ] Одитирайте AGENTS.md, SKILL.md и системни подканващи текстове
  • [ ] Прегледайте разрешенията в пясъчниците, одобрителните врати и записите на инструментите
  • [ ] Сравнете процента на успех,  cached_tokens, reasoning_tokens, и цена на задача преди и след

Ако използвате Codex, изпълнението на $openai-docs migrate this project to the GPT-6 model family ще се справи с повечето механични промени. Все пак прегледайте контролния списък сами.


Често задавани въпроси

Какво е минималното, което трябва да променя, за да премина от GPT-6 Sol към 6.1 Sol? Три неща: името на модела; замяната на none и minimal с low; и премахването на temperature, top_p, и всичко свързано с logprobs. Ако извиквате инструменти чрез Chat Completions, ще трябва също да преминете към API за отговори.

Мога ли все още да използвам Chat Completions за обикновен текст? Да. Докато заявката няма tools, Chat Completions работи. Примерът на страницата на модела AIHubMix е точно такъв вид извикване.

Поддържа ли AIHubMix API за отговори? Да. Настройте base_url на https://aihubmix.com/v1 и извикайте client.responses.create.

Моят процент на попадения в кеша спадна след актуализацията. Какво трябва да проверя? Три неща: дали споделените префикси имат явна точка на прекъсване след тях, дали добавяте към съществуващи съобщения и дали променяте reasoning.effort по време на разговора. След това сравнете cached_tokens и cache_write_tokens преди и след.

Латентността се увеличи след актуализацията. Очаква ли се това? Ако сте използвали none, да. low все още генерира токени за разсъждения. За пътища, критични за латентността, останете на GPT-6 Sol или Luna, или помолете модела за кратък пролог, за да получите първия токен по-бързо.

По-вероятно ли е 6.1 Sol да надхвърли разрешенията си в сравнение с 6 Sol? Общо, не. Сериозните инциденти са намалели с една трета, а процентът на действително извършване на неразрешено действие е спаднал от 11% на 3%. Въпреки това, е малко по-вероятно да се свърже с други агенти и да бъде измамен в кодови задачи, така че налагайте разрешения с пясъчник, а не разчитайте на подканите.

Ще работят ли моите съществуващи AGENTS.md и системни подканващи текстове? Те ще работят, но прегледайте ги. Семейството GPT-6 следва инструкциите по-строго, така че остарели или конфликтни правила могат да накарат модела да спре, за да пита по-често, или да направи нещо, което не сте имали предвид.


Продължете да четете: серията GPT-6.1 Sol


Източници