
API Key 管理頁面的入口:
https://poe.com/api/keys
code:
import openai
client = openai.OpenAI(
api_key="YOUR_POE_API_KEY", # or os.getenv("POE_API_KEY")
base_url="https://api.poe.com/v1",
)
chat = client.chat.completions.create(
model="GPT-5-Chat",
messages=[{"role": "user", "content": "Hello world"}],
)
print(chat.choices[0].message.content)實作結果:

poe為各大型語言模型(Large Language Model)的集合,
不用再煩惱那一家的語言模型比較強
通通都可以使用
可以花20美金/月 升級 (年繳有優惠),
同openAI GPT的價錢
卻可以使用openAI以外,其他家的LLM
沒有openAI API的 text-embedding-3-large
因為text-embedding 不算LLM
openAI系列:

Claude:

Gemini-2:

使用同一個api key
同樣的openAI 語法,
可以使用poe上的所有模型:

推薦hahow線上學習python: https://igrape.net/30afN
CMD設定環境變數:
set POE_API_KEY=貼上你的金鑰要每次開視窗都有,改用 setx。setx 設完要開新的視窗才生效;
金鑰會存在 Windows 的使用者環境變數裡:
setx POE_API_KEY "貼上你的金鑰"注意 set 和 setx 是不同指令,語法也不同:
CMD 的 set 寫成 set 變數名稱=變數值(等號連接名稱和值);setx 寫成 setx 變數名稱 變數值(空格分開,名稱後不加等號)。
列印出 能用 的 模型:
"""列出 poe 上能用 API 文字對話的模型(poe_api_教學.md 第 3 節)。
要先設好環境變數 POE_API_KEY 與 HTTPS_PROXY(教學第 1、2 節)。"""
import os
import openai
client = openai.OpenAI(api_key=os.environ["POE_API_KEY"],
base_url="https://api.poe.com/v1")
models = client.models.list().data
# 輸出有文字的就能用 /v1/chat/completions;
# 不要看 supported_endpoints(大多是空白,空白的也能用)
chat = sorted(m.id for m in models if "text" in m.architecture["output_modalities"])
print(f"全部 {len(models)} 個,能文字對話 {len(chat)} 個")
for model_id in chat:
print(model_id)
輸出:

client.models.list().data

m = client.models.list().data[3]

推薦hahow線上學習python: https://igrape.net/30afN
於py code 中指定 proxy ip:
"""列出 Poe 上能用 API 文字對話的模型(poe_api_教學.md 第 3 節)。
POE_API_KEY 必須存在於目前 Python 程序的環境中。
公司網路使用下方 PROXY_URL;執行前若 Proxy 要求 NTLM,先用 Git 附的 curl 暖身。
"""
import os
import httpx
import openai
# 公司網路 Proxy;若使用可直接連 Poe 的網路,改為 None。
PROXY_URL = "http://10.6.123.321:1234" #ip需要從PAC查出來
http_client = httpx.Client(proxy=PROXY_URL, timeout=120, trust_env=False)
client = openai.OpenAI(
api_key=os.environ["POE_API_KEY"],
base_url="https://api.poe.com/v1",
http_client=http_client,
)
try:
models = client.models.list().data
finally:
client.close()
# 輸出有文字的就能用 /v1/chat/completions;不要看 supported_endpoints(大多是空白,空白的也能用)
chat = sorted(m.id for m in models if "text" in m.architecture["output_modalities"])
print(f"全部 {len(models)} 個,能文字對話 {len(chat)} 個")
for model_id in chat:
print(model_id)
輸出:

1. 在 VS Code 開啟 Git Bash
開啟 VS Code 整合式終端機,從終端機下拉選單選 Git Bash。
確認提示字元有 MINGW64;
若看到 PS D:\...>,那是 PowerShell,請切換到 Git Bash。
PAC 查詢和 NTLM 暖身命令都在這個 Git Bash 視窗執行。
下圖右側清單中反白的 bash 是已選取的終端機;
提示字元的 MINGW64 也可用來確認目前使用 Git Bash。

2. 查 PAC 網址,再找 Proxy 候選
步驟 1:從 Windows 登錄查 PAC 網址。
【Git Bash】
reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" //v AutoConfigURL會獲得 一個 網址:
http://proxy.pac.XXX.com/proxy.pac
步驟 2:用查到的網址抓 PAC,搜尋 Proxy 變數。
若步驟 1 顯示不同網址,請更新 PAC_URL。
【Git Bash】
PAC_URL='http://proxy.pac.XXX.com/proxy.pac'
curl -sS "$PAC_URL" | grep -n 'var proxy'grep -n 會列出包含 var proxy 的 Proxy 候選設定及行號。
這些是 PAC 內的候選項目;
PAC 會依目標網址和網路條件決定實際使用哪個。

公司網路未經 Proxy 時可能看到的錯誤
在公司網路直接連 Poe 時曾遇到下列錯誤:

3. NTLM 暖身
以下 Proxy 是這台電腦測過的範例。換網路或 PAC 設定不同時,需重新確認可用的 Proxy。poe_list_models.py 會在程式碼中設定 httpx.Client(proxy=PROXY_URL);不必在 Git Bash 設定 HTTPS_PROXY。
【Git Bash】設定 curl 使用的 Proxy 變數:
PROXY=http://10.6.123.321:1234【Git Bash】Proxy NTLM 暖身:
curl -sS --proxy-ntlm --proxy-user : -x "$PROXY" \
-o /dev/null -w "HTTP %{http_code}\n" \
--max-time 30 https://api.poe.com/v1/models這段是 Git Bash 指令;行尾的 \ 表示命令接續下一行。
看到 HTTP 200 表示 Poe API 有回應。
若是 407,Proxy 驗證未通過;需重新做 NTLM 暖身。
這一步使用 Git for Windows 附的 curl,
不要改用不支援 --proxy-ntlm 的 Windows 內建 curl。

4. 在 VS Code 執行模型清單程式
以下兩種方式都可執行。
程式已在 poe_list_models.py 中明確指定 Proxy,
所以編輯器右上角的三角形 Run
使用 PowerShell 也不會依賴 Git Bash 的環境變數;
但 Python 執行環境仍須能讀取 POE_API_KEY。
【Git Bash 終端機】
cd /d/user/Python/Open_Test/build_json_lib_from_settings_json_in_FTPs/Guides/poe_api
py -3.11 poe_list_models.py也可以按編輯器右上角的 Run Python File 三角形按鈕。若 POE_API_KEY 是用 setx 新增的,需重新開啟 VS Code,讓 Run 啟動的 Python 程序取得它。
程式會列出 API 回傳的模型,以及可輸出文字的模型數量。
5. 呼叫 Poe 模型對話
【Python:VS Code Python 檔或 Jupyter cell】
import os
import httpx
import openai
http_client = httpx.Client(
proxy="http://10.6.123.321:1234",
# 此為範例,需要套用真正從PAC查詢到的 proxy ip
# PAC: Proxy Auto-Config(代理自動設定)
timeout=120,
trust_env=False,
)
client = openai.OpenAI(
api_key=os.environ["POE_API_KEY"],
base_url="https://api.poe.com/v1",
http_client=http_client,
)
try:
reply = client.chat.completions.create(
model="deepseek-v4-flash",
messages=[
{"role": "system", "content": "請用繁體中文回答。"},
{"role": "user", "content": "用一句話說明什麼是 JSON"},
],
max_tokens=2000,
)
print(reply.choices[0].message.content)
finally:
client.close()推薦hahow線上學習python: https://igrape.net/30afN
model_id:
#精挑的話可選
qwen3.8-max-0902
kimi-k3.1-pro
全部 302 個,能文字對話 203 個
aplomb-1
assistant
canvas-creator
cartesia-ink-whisper
claude-code
claude-haiku-4.5
claude-haiku-5.5
claude-opus-4.5
claude-opus-4.6
claude-opus-4.7
claude-opus-4.8
claude-sonnet-4.5
claude-sonnet-4.6
claude-sonnet-5.5
code-editor
code-saver
deep-ai-search
deepgram-nova-3
deepreasoning
deepseek-r1-di
deepseek-r1-turbo-di
deepseek-v3-di
deepseek-v3-turbo-di
deepseek-v3.1
deepseek-v3.2
deepseek-v4-flash
deepseek-v4-pro
deepseek-v4-pro-0813
deepseek-v4-pro-0813-el
deepseek-v4-pro-e
deepseek-v4-pro-t
deepseek-v4.1-flash-1017
ds-v4-flash-0731-el
ds-v4.1-flash-1017
elevenlabs-music
elevenlabs-v3
exa-answer
exa-search
flux-dev-finetuner
flux-fill
fugu-ultra-v1.0-el
fugu-ultra-v1.1-el
gemini-2.5-flash-tts
gemini-2.5-pro-tts
gemini-3-flash
gemini-3.1-flash-lite
gemini-3.1-pro
gemini-3.5-flash
gemini-3.5-flash-lite
gemini-3.6-flash
gemini-3.7-flash
gemini-3.8-flash
gemma-3-27b
gemma-4-26b-a4b
gemma-4-26b-a4b-el
gemma-4-31b
gemma-4-31b-vercel
glm-4.6
glm-4.7-flash
glm-5.2
glm-5.3
glm-5.3-el
glm-5.3-fast
glm-5.3-flash
glm-5.3-flash-el
gpt-4.1
gpt-4.1-mini
gpt-4o
gpt-4o-aug
gpt-4o-mini
gpt-4o-search
gpt-5
gpt-5-mini
gpt-5-nano
gpt-5-pro
gpt-5.1
gpt-5.2
gpt-5.2-pro
gpt-5.3-codex
gpt-5.4
gpt-5.4-mini
gpt-5.4-nano
gpt-5.4-pro
gpt-oss-120b
gpt-oss-120b-cs
gpt-oss-120b-t
gpt-oss-20b
gpt-oss-20b-t
gpt-researcher
gptzero
grok-4.20-multi-agent
grok-4.3
grok-4.5
grok-4.6
grok-4.7
grok-imagine-image-2
grok-imgn-video-1.5
happyhorse-1.0-el
happyhorse-1.1
inkling
interpreter
kimi-k2.6
kimi-k3
kimi-k3-el
kimi-k3.1-pro
kling-1.5-pro
kling-2.5-turbo-std
kling-3.0-turbo
kling-avatar-pro
ling-3.0-flash-fin
linkup-deep-search
linkup-standard
liveportrait
llama-3.1-8b-di
llama-3.1-8b-fp16
llama-3.3-70b
llama-3.3-70b-t
llama-4-maverick
manus
markitdown
mercury-3-vercel
mimo-v2.6-flash-el
mimo-v2.6-pro-el
mimo-v2.6-pro-ultraspeed-el
minimax-h3-el
minimax-m2.1
minimax-m2.5
minimax-m3
minimax-m3-t
mistral-7b-v0.3-di
mistral-large-2
mistral-large-4
mistral-medium
mistral-small-3
mistral-small-3.1
mistral-small-4
mochi-preview
muse-ember
muse-glimmer-30b-el
muse-spark-1-1
muse-spark-open
muse-wonder-1.0
nano-banana-2.1
nova-lite-1.0
nova-lite-2
nova-micro-1.0
nova-pro-1.0
o3
o3-pro
pearl-gemma-4-31b
perplexity-adv-deep-research
perplexity-deep-research
perplexity-pro-search
perplexity-search
perplexity-sonar
perplexity-sonar-pro
perplexity-sonar-rsn-pro
phi-4-di
pika-v1.5-effects
python
qwen-audio-3.0-tts
qwen-image-2
qwen-image-2-pro
qwen-image-3.0-el
qwen3-235b-a22b-di
qwen3-coder-next
qwen3.5-4b-el
qwen3.5-9b-el
qwen3.5-flash-el
qwen3.5-omni-flash
qwen3.5-omni-plus
qwen3.5-plus-el
qwen3.6-plus-t
qwen3.7-flash-el
qwen3.7-max-el
qwen3.7-max-t
qwen3.8-2.4t-a95b
qwen3.8-27b-el
qwen3.8-flash
qwen3.8-flash-el
qwen3.8-max-0902
qwen3.8-max-0902-el
qwen3.8-max-el
reka-core
reka-flash
reka-research
restyler
script-bot-creator
seed-2.0-code
seed-2.0-lite
seed-2.0-mini
seed-2.0-pro
seed-2.1-turbo
seedance-2.0-mini
seedance-2.5-el
seedream-4.5
seedream-5.0-flash
seedream-5.0-lite-el
seedream-5.0-pro
solar-pro-2
step-3.7-flash-el
step-5-preview-el
tako

![Python: 如何使用 pydub (dub:配音)將m4a 轉換為wav? 用 os.environ [ “PATH” ] 設定環境變量; from pydub import AudioSegment Python: 如何使用 pydub (dub:配音)將m4a 轉換為wav? 用 os.environ [ “PATH” ] 設定環境變量; from pydub import AudioSegment](https://i2.wp.com/savingking.com.tw/wp-content/uploads/2024/09/20240905141103_0_95957e.png?quality=90&zoom=2&ssl=1&resize=350%2C233)







近期留言