Files
pj_llama/README.md
aken1023 3c0fba5fc8 完全移除內網連接,專注外網API
變更項目:
- 刪除所有內網相關程式檔案
- 移除內網IP參考 (192.168.x.x)
- 精簡檔案結構,只保留核心程式
- 重命名主程式為 llama_chat.py
- 更新所有文檔移除內網內容
- 專注於外網 API 連接和多端點支援

保留檔案:
- llama_chat.py (主程式)
- llama_full_api.py (完整版)
- quick_test.py (快速測試)
- test_all_models.py (模型測試)
- README.md, 操作指南.md (文檔)
2025-09-19 22:07:01 +08:00

205 lines
4.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Llama AI 對話程式
一個簡單易用的 Python 程式,用於連接和使用 Llama AI 模型進行對話。
## 🌟 主要功能
-**支援內網和外網連接** - 自動偵測可用的 API 端點
- 💬 **互動式對話介面** - 像聊天一樣與 AI 對話
- 🤖 **多模型支援** - GPT-OSS、DeepSeek、Qwen 等多種模型
- 🔄 **自動重試機制** - 連接失敗時自動切換端點
- 🧹 **智慧清理回應** - 自動移除 AI 思考過程的標記
- 📝 **對話歷史管理** - 保持上下文連貫的對話
## 🚀 快速開始
### 1. 安裝需求
確保你的電腦已安裝 Python 3.7 或更新版本。
```bash
# 安裝必要套件
pip install openai
```
### 2. 下載程式
```bash
# 複製專案
git clone https://gitea.theaken.com/aken1023/pj_llama.git
cd pj_llama
# 或直接下載 ZIP 檔案解壓縮
```
### 3. 執行對話程式
```bash
# 執行主程式(智慧對話)
python llama_chat.py
# 或執行完整版本(支援多端點)
python llama_full_api.py
```
## 📖 使用說明
### 基本對話
執行程式後,會出現以下畫面:
```
============================================================
Llama API 完整對話程式
時間: 2025-09-19 16:00:00
============================================================
[主要端點測試]
測試 Llama 通用端點... [OK]
測試 GPT-OSS 專用端點... [OK]
測試 DeepSeek 專用端點... [OK]
找到 3 個可用端點,請選擇 (預設: 1):
```
選擇端點後即可開始對話:
```
你: 你好
AI: 你好!有什麼我可以幫助你的嗎?
你: 1+1等於多少
AI: 1+1等於2。
```
### 對話指令
在對話中可以使用以下指令:
| 指令 | 功能 |
|-----|------|
| `exit``quit` | 結束對話 |
| `clear` | 清空對話歷史,開始新對話 |
| `model` | 切換使用的 AI 模型 |
## 🔧 程式檔案說明
| 檔案名稱 | 用途說明 |
|---------|---------|
| `llama_chat.py` | **主程式** - 智慧對話程式 |
| `llama_full_api.py` | 完整功能版本,支援多端點切換 |
| `quick_test.py` | 快速測試連接是否正常 |
| `test_all_models.py` | 測試所有模型的工具 |
## 🌐 可用的 API 端點
### 主要端點
| 端點 | 地址 | 支援模型 |
|-----|------|---------|
| 通用端點 | `https://llama.theaken.com/v1` | 所有模型 |
| GPT-OSS 專用 | `https://llama.theaken.com/v1/gpt-oss-120b` | GPT-OSS-120B |
| DeepSeek 專用 | `https://llama.theaken.com/v1/deepseek-r1-671b` | DeepSeek-R1-671B |
### 備用端點
| 端點 | 地址 | 支援模型 |
|-----|------|---------|
| 備用 API 1 | `https://api.llama.theaken.com/v1` | 所有模型 |
| 備用 API 2 | `https://llama-api.theaken.com/v1` | 所有模型 |
## 🤖 支援的 AI 模型
1. **GPT-OSS-120B** - 開源 GPT 模型1200 億參數
2. **DeepSeek-R1-671B** - DeepSeek 推理模型6710 億參數
3. **Qwen3-Embedding-8B** - 通義千問嵌入模型80 億參數
## ❓ 常見問題
### 問題:程式顯示「無法連接」
**解決方法:**
1. 檢查網路連接是否正常
2. 確認可以訪問外部網站 (https://llama.theaken.com)
3. 嘗試執行 `python quick_test.py` 測試連接
4. 如果主要端點無法使用,程式會自動嘗試備用端點
### 問題AI 回應包含奇怪的標記
**說明:**
有時 AI 回應會包含 `<think>``<|channel|>` 等標記,這是 AI 的思考過程,程式會自動清理這些內容。
### 問題:對話不連貫
**解決方法:**
使用 `clear` 指令清空對話歷史,開始新的對話。
## 📝 簡單範例程式碼
如果你想在自己的程式中使用,可以參考以下程式碼:
```python
from openai import OpenAI
# 設定連接
client = OpenAI(
api_key="paVrIT+XU1NhwCAOb0X4aYi75QKogK5YNMGvQF1dCyo=",
base_url="https://llama.theaken.com/v1"
)
# 發送訊息
response = client.chat.completions.create(
model="gpt-oss-120b",
messages=[
{"role": "user", "content": "你好"}
]
)
# 顯示回應
print(response.choices[0].message.content)
```
## 🛠️ 進階設定
### 修改 API 金鑰
如果需要使用不同的 API 金鑰,編輯程式中的:
```python
API_KEY = "你的新金鑰"
```
### 新增端點
`llama_full_api.py` 中的 `ENDPOINTS` 加入新端點:
```python
"主要": [
{
"name": "新端點",
"url": "https://新的地址/v1",
"models": ["gpt-oss-120b"]
}
]
```
## 📄 授權條款
本專案採用 MIT 授權條款,可自由使用、修改和分發。
## 🤝 問題回報
如果遇到問題或有建議,歡迎在 Gitea 上開 Issue
https://gitea.theaken.com/aken1023/pj_llama/issues
## 📊 測試狀態
最後測試時間2025-09-19
- 📡 主要端點:正在測試中
- 🔄 備用端點:當主要端點無法使用時自動切換
---
**版本**: 1.0.0
**作者**: Aken
**專案網址**: https://gitea.theaken.com/aken1023/pj_llama