Files
pj_llama/README.md
aken1023 34fcf39fda 更新 README.md 為中文版本
- 改為簡單易懂的中文說明
- 加入詳細的使用教學
- 增加常見問題解答
- 提供範例程式碼
- 加入 emoji 讓內容更生動
2025-09-19 21:59:47 +08:00

203 lines
4.7 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_full_api.py
# 或執行內網專用版本
python llama_chat.py
```
## 📖 使用說明
### 基本對話
執行程式後,會出現以下畫面:
```
============================================================
Llama API 完整對話程式
時間: 2025-09-19 16:00:00
============================================================
[內網端點測試]
測試 內網端點 1 (21180)... [OK]
測試 內網端點 2 (21181)... [OK]
測試 內網端點 3 (21182)... [OK]
找到 3 個可用端點,請選擇 (預設: 1):
```
選擇端點後即可開始對話:
```
你: 你好
AI: 你好!有什麼我可以幫助你的嗎?
你: 1+1等於多少
AI: 1+1等於2。
```
### 對話指令
在對話中可以使用以下指令:
| 指令 | 功能 |
|-----|------|
| `exit``quit` | 結束對話 |
| `clear` | 清空對話歷史,開始新對話 |
| `model` | 切換使用的 AI 模型 |
## 🔧 程式檔案說明
| 檔案名稱 | 用途說明 |
|---------|---------|
| `llama_full_api.py` | **主程式** - 完整功能版本,支援所有端點 |
| `llama_chat.py` | 內網專用對話程式 |
| `quick_test.py` | 快速測試連接是否正常 |
| `local_api_test.py` | 測試所有端點的工具 |
## 🌐 可用的 API 端點
### 內網端點(公司/學校內部網路)
| 端點 | 地址 | 狀態 |
|-----|------|------|
| 端點 1 | `http://192.168.0.6:21180/v1` | ✅ 正常 |
| 端點 2 | `http://192.168.0.6:21181/v1` | ✅ 正常 |
| 端點 3 | `http://192.168.0.6:21182/v1` | ✅ 正常 |
### 外網端點(需要網路連接)
| 端點 | 地址 | 狀態 |
|-----|------|------|
| 通用端點 | `https://llama.theaken.com/v1` | 📡 需測試 |
## 🤖 支援的 AI 模型
1. **GPT-OSS-120B** - 開源 GPT 模型1200 億參數
2. **DeepSeek-R1-671B** - DeepSeek 推理模型6710 億參數
3. **Qwen3-Embedding-8B** - 通義千問嵌入模型80 億參數
## ❓ 常見問題
### 問題:程式顯示「無法連接」
**解決方法:**
1. 檢查網路連接是否正常
2. 如果在公司/學校,確認是否在內網環境
3. 嘗試執行 `python quick_test.py` 測試連接
### 問題AI 回應包含奇怪的標記
**說明:**
有時 AI 回應會包含 `<think>``<|channel|>` 等標記,這是 AI 的思考過程,程式會自動清理這些內容。
### 問題:對話不連貫
**解決方法:**
使用 `clear` 指令清空對話歷史,開始新的對話。
## 📝 簡單範例程式碼
如果你想在自己的程式中使用,可以參考以下程式碼:
```python
from openai import OpenAI
# 設定連接
client = OpenAI(
api_key="paVrIT+XU1NhwCAOb0X4aYi75QKogK5YNMGvQF1dCyo=",
base_url="http://192.168.0.6:21180/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": "http://新的地址/v1",
"models": ["gpt-oss-120b"]
}
]
```
## 📄 授權條款
本專案採用 MIT 授權條款,可自由使用、修改和分發。
## 🤝 問題回報
如果遇到問題或有建議,歡迎在 Gitea 上開 Issue
https://gitea.theaken.com/aken1023/pj_llama/issues
## 📊 測試狀態
最後測試時間2025-09-19
- ✅ 內網端點 1-3全部正常
- ❌ 外網端點暫時無法使用502 錯誤)
---
**版本**: 1.0.0
**作者**: Aken
**專案網址**: https://gitea.theaken.com/aken1023/pj_llama