Skip to content

neteroster/poe2openai

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔄 POE to OpenAI API

Rust License Docker Version Docker Size Docker Pulls

Poe2OpenAI 是一個將 POE API 轉換為 OpenAI API 格式的代理服務。讓 Poe 訂閱者能夠通過 OpenAI API 格式使用Poe 的各種AI模型

📑 目錄

✨ 主要特點

  • 🔄 支援 OpenAI API 格式(/models 和 /chat/completions)
  • 💬 支援串流和非串流模式
  • 📊 Web 管理介面用於配置模型(模型映射 和 編輯/models 顯示的模型)
  • 🚀 Rust 實現
  • 🌐 對 POE API 的 Event 進行完整處理
  • 🐳 Docker 支援

🔧 安裝指南

使用 Docker(推薦)

# 拉取映像
docker pull jeromeleong/poe2openai:latest

# 運行容器
docker run --name poe2openai -d \
  -p 8080:8080 \
  -e ADMIN_USERNAME=admin\
  -e ADMIN_PASSWORD=123456 \
  jeromeleong/poe2openai:latest

使用 Docker Compose

version: '3.8'
services:
  poe2openai:
    image: jeromeleong/poe2openai:latest
    ports:
      - "8080:8080"
    environment:
      - PORT=8080
      - LOG_LEVEL=info
      - ADMIN_USERNAME=admin
      - ADMIN_PASSWORD=123456
      - MAX_REQUEST_SIZE=1073741824

從源碼編譯

# 克隆專案
git clone https://github.com/jeromeleong/poe2openai
cd poe2openai

# 編譯
cargo build --release

# 運行
./target/release/poe2openai

🚀 快速開始

  1. 使用 Docker 啟動服務:
docker run -d -p 8080:8080 jeromeleong/poe2openai:latest
  1. 服務器默認在 http://localhost:8080 啟動

  2. 使用方式示例:

curl http://localhost:8080/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer your-poe-token" \
  -d '{
    "model": "gpt-4o-mini",
    "messages": [{"role": "user", "content": "你好"}],
    "stream": true
  }'
  1. 可以在http://localhost:8080\admin管理模型

📖 API 文檔

支援的 Openai API端點

  • GET /v1/models - 獲取可用模型列表
  • POST /v1/chat/completions - 與 POE 模型聊天
  • GET /models - 獲取可用模型列表(相容端點)
  • POST /chat/completions - 與 POE 模型聊天(相容端點)

請求格式

{
  "model": "string",
  "messages": [
    {
      "role": "user",
      "content": "string"
    }
  ],
  "temperature": 0.7,
  "stream": false
}

響應格式

{
  "id": "chatcmpl-xxx",
  "object": "chat.completion",
  "created": 1677858242,
  "model": "gpt-4o-mini",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "回應內容"
      },
      "finish_reason": "stop"
    }
  ]
}

⚙️ 配置說明

服務器配置通過環境變量進行:

  • PORT - 服務器端口(默認:8080)
  • HOST - 服務器主機(默認:0.0.0.0)
  • ADMIN_USERNAME - 管理介面用戶名 默認:admin)
  • ADMIN_PASSWORD - 管理介面密碼 默認:123456)
  • MAX_REQUEST_SIZE - 最大請求大小(默認:1073741824)
  • LOG_LEVEL - 日誌級別(默認:info)

❓ 常見問題

Q: Poe API Token如何獲取?

A: 首先要訂閱Poe,才能從Poe API Key網頁中取得

Q: 為什麼會收到認證錯誤?

A: 確保在請求頭中正確設置了 Authorization: Bearer your-poe-token

Q: 支援哪些模型?

A: 支援所有 POE 平台上可用的模型,可通過 /v1/models 端點查詢

Q: 如何修改服務器端口?

A: 可以通過設置環境變量 PORT 來修改,例如:

docker run -d -e PORT=3000 -p 3000:3000 jeromeleong/poe2openai:latest

🤝 貢獻指南

歡迎所有形式的貢獻!

📄 授權協議

本專案使用 MIT 授權協議

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 63.2%
  • HTML 33.8%
  • Dockerfile 3.0%