Windows下 AutoGen(一)环境准备
1. Python 环境
安装git 安装和设置 Git - Azure DevOps | Microsoft Learn
安装 Anaconda/Miniconda Getting started with Anaconda - Anaconda
abc@DESKTOP-robot2 MINGW64 /d/github/mai
$ conda info -e
# conda environments:
#
# * -> active
# + -> frozen
base D:\App\Anaconda
mai D:\App\Anaconda\envs\mai
conda创建Python虚拟环境,制定python版本:
conda create -n env-name python=3.6
如果是 Powershell 下运行,激活某个虚拟环境:
(base) PS D:\github\mai> conda activate mai
如果 Git-bash 下运行,需要:
conda init bash
(mai) PS D:\github\mai> conda activate mai
如果报错:UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 572: illegal multibyte sequence Unexpected cygpath error, fallback to manual path conversion AttributeError: 'NoneType' object has no attribute 'strip'
Windows 系统默认编码是 gbk ,而 gitbash 使用 utf8 ,可以设置 python 系统环境为变量 utf8 全局解决,系统环境变量“新建” - 变量名: PYTHONUTF8 - 变量值:1
# 删除环境
(mai) PS D:\github\mai> conda remove -n mai --all
2. 微软 AutoGen
GitHub - microsoft/autogen: A programming framework for agentic AI
微软用于生成 .net / python的AI代理和多代理工作流。支持的模型:Models — AutoGen
安装autogen + openai
pip install -U "autogen-agentchat" "autogen-ext[openai]"
3. OpenAI ApiKey
注册Gmail邮箱,https://platform.openai.com/ ,注册会给一个test key,可以直接用。

4. Demo
首先测试 OpenAI 是否ok:
from openai import OpenAI
client = OpenAI(
api_key="xxx"
)
response = client.responses.create(
model="gpt-5-nano",
input="write a haiku about ai",
store=True,
)
print(response.output_text);
输出结果:
[Running] python -u "d:\github\mai\test_openai_apikey.py"
Soft circuits murmur
learning from vast data sets
dreams in silicon
测试 AutoGen + OpenAI:
import asyncio
from autogen_agentchat.agents import AssistantAgent
from autogen_ext.models.openai import OpenAIChatCompletionClient
async def main() -> None:
# update your OpenAI Appkey to api_key
model_client = OpenAIChatCompletionClient(model="gpt-5-nano", api_key="sk-proj-xxxx")
agent = AssistantAgent("assistant", model_client=model_client)
print(await agent.run(task="Say 'Hello World!'"))
await model_client.close()
asyncio.run(main())
输出结果:
messages=[TextMessage(id='9528e7ce-1cae-4227-8fa8-64aef120c3f5', source='user', models_usage=None, metadata={}, created_at=datetime.datetime(2025, 11, 12, 8, 48, 1, 12789, tzinfo=datetime.timezone.utc), content="Say 'Hello World!'", type='TextMessage'), TextMessage(id='18627195-324d-40ac-9183-1d646ffc6413', source='assistant', models_usage=RequestUsage(prompt_tokens=40, completion_tokens=335), metadata={}, created_at=datetime.datetime(2025, 11, 12, 8, 48, 7, 445152, tzinfo=datetime.timezone.utc), content='Hello World!\nTERMINATE', type='TextMessage')] stop_reason=None
更多推荐



所有评论(0)