# llm 0.33 发布：升级 OpenAI 库并新增多项功能

- 来源：Simon Willison 博客
- 发布时间：2026-08-23 01:01
- AIHOT 分数：58
- AIHOT 链接：https://aihot.virxact.com/items/cmt4orcfy1rkzro6twbrlca58
- 原文链接：https://simonwillison.net/2026/Aug/22/llm

## AI 摘要

llm 0.33 发布，升级至 OpenAI Python 库 3.x，并将 HTTP 客户端依赖从 httpx 切换为 httpx2。llm embed 及 embed-multi 现支持 --key 参数，Python 方法也可传递 key=。

## 正文

Upgraded to the OpenAI Python library 3.x and switched the HTTP client dependency from httpx to httpx2. #1608, #1631

I shipped a quick 0.32.1 fix for this yesterday, but this is the more comprehensive fix.

llm embed and llm embed-multi now accept --key. The Python EmbeddingModel.embed(), EmbeddingModel.embed_multi(), Collection.embed() and Collection.embed_multi() methods accept key= too, passing the resolved per-call key to embedding plugins without changing shared model state. Existing plugins that read self.key continue to work through a compatibility fallback. Thanks, ChrisJr404. #757, #1620

The embedding models now use the same pattern for keys that regular LLM models do.

llm prompt -t/--template can now be repeated to combine templates in order. This allows model configuration and options from one template to be used with a prompt from another.

This unlocks a neat pattern where you can create templates that package a model with a set of default options:

llm -m gpt-5.6-luna -o reasoning_effort high --save lhigh llm "Generate an SVG of a pelican riding a bicycle" --save pelican # Combine and run the templates llm -t lhigh -t pelican

Reasoning-capable Responses API models now support a reasoning_summary option with auto, concise, and detailed values. This can be used with llm openai endpoint --responses. #1600

This is particularly useful for exercising different models that provide their own imitation of the OpenAI Responses API.
