重構為外網連接版本

主要變更:
- 移除所有內網 IP (192.168.x.x)
- 改用外網端點 (https://llama.theaken.com)
- 新增 llama_external_api.py 專門處理外網連接
- 更新所有文檔為外網版本
- 加入備用端點自動切換機制
- 優化錯誤處理和超時設定
This commit is contained in:
2025-09-19 22:04:10 +08:00
parent 34fcf39fda
commit e71495ece4
5 changed files with 385 additions and 98 deletions

View File

@@ -16,37 +16,32 @@ API_KEY = "paVrIT+XU1NhwCAOb0X4aYi75QKogK5YNMGvQF1dCyo="
# API 端點配置
ENDPOINTS = {
"內網": [
"主要": [
{
"name": "內網端點 1 (21180)",
"url": "http://192.168.0.6:21180/v1",
"name": "Llama 通用端點",
"url": "https://llama.theaken.com/v1",
"models": ["gpt-oss-120b", "deepseek-r1-671b", "qwen3-embedding-8b"]
},
{
"name": "內網端點 2 (21181)",
"url": "http://192.168.0.6:21181/v1",
"models": ["gpt-oss-120b", "deepseek-r1-671b", "qwen3-embedding-8b"]
},
{
"name": "內網端點 3 (21182)",
"url": "http://192.168.0.6:21182/v1",
"models": ["gpt-oss-120b", "deepseek-r1-671b", "qwen3-embedding-8b"]
}
],
"外網": [
{
"name": "外網 GPT-OSS-120B",
"name": "GPT-OSS 專用端點",
"url": "https://llama.theaken.com/v1/gpt-oss-120b",
"models": ["gpt-oss-120b"]
},
{
"name": "外網 DeepSeek-R1-671B",
"name": "DeepSeek 專用端點",
"url": "https://llama.theaken.com/v1/deepseek-r1-671b",
"models": ["deepseek-r1-671b"]
}
],
"備用": [
{
"name": "備用 API 端點 1",
"url": "https://api.llama.theaken.com/v1",
"models": ["gpt-oss-120b", "deepseek-r1-671b", "qwen3-embedding-8b"]
},
{
"name": "外網通用端點",
"url": "https://llama.theaken.com/v1",
"name": "備用 API 端點 2",
"url": "https://llama-api.theaken.com/v1",
"models": ["gpt-oss-120b", "deepseek-r1-671b", "qwen3-embedding-8b"]
}
]
@@ -121,23 +116,23 @@ def test_all_endpoints():
available_endpoints = []
# 測試內網端點
print("\n[內網端點測試]")
for endpoint in ENDPOINTS["內網"]:
# 測試主要端點
print("\n[主要端點測試]")
for endpoint in ENDPOINTS["主要"]:
print(f" 測試 {endpoint['name']}...", end="", flush=True)
if test_endpoint(endpoint):
print(" [OK]")
available_endpoints.append(("內網", endpoint))
available_endpoints.append(("主要", endpoint))
else:
print(" [FAIL]")
# 測試外網端點
print("\n[外網端點測試]")
for endpoint in ENDPOINTS["外網"]:
# 測試備用端點
print("\n[備用端點測試]")
for endpoint in ENDPOINTS["備用"]:
print(f" 測試 {endpoint['name']}...", end="", flush=True)
if test_endpoint(endpoint):
print(" [OK]")
available_endpoints.append(("外網", endpoint))
available_endpoints.append(("備用", endpoint))
else:
print(" [FAIL]")