FAQ-問題與解答
主頁 »» 網頁客服| 內容列表 | |
|---|---|
|
|
[ 回索引 ]
此篇文章為網友個人意見,不代表本站立場.
| 發表者 | 樹狀展開 |
|---|---|
| jetbomb | 發表日: 2026-04-28 09:41 更新: 2026-04-28 09:41 |
網站管理員 ![]() ![]() 註冊日: 2025-10-24 來自: MCSD HUI HUA PENG 發表數: 383 |
🚀 一鍵置入(最重要)
<script src="https://pk530.fun/ai-chat.js"></script> 🎯 放哪裡? 👉 放在每個頁面的最底部(</body> 前): </body> <script src="https://pk530.fun/ai-chat.js"></script> </html> |
|
|
|
| jetbomb | 發表日: 2026-04-28 09:39 更新: 2026-04-28 09:39 |
網站管理員 ![]() ![]() 註冊日: 2025-10-24 來自: MCSD HUI HUA PENG 發表數: 383 |
document.addEventListener("DOMContentLoaded", function () {
const box = document.createElement("div"); box.innerHTML = ` <div style=" position: fixed; bottom: 15px; right: 15px; width: 300px; max-width: 90%; background: #fff; border: 1px solid #ccc; padding: 10px; box-shadow: 0 0 10px rgba(0,0,0,0.2); font-size:14px; z-index:9999; border-radius: 10px; "> <div id="chat" style="height:220px; overflow:auto; margin-bottom:8px;"></div> <input id="msg" placeholder="例如:我要做網站 / AI客服多少錢" style="width:70%; padding:5px;"> <button id="sendBtn" style="width:25%;">送</button> </div> `; document.body.appendChild(box); const chat = document.getElementById("chat"); const input = document.getElementById("msg"); const btn = document.getElementById("sendBtn"); // 🧠 開場白 chat.innerHTML = "<div><b>AI:</b>👋 我是古堡艦隊這邊的AI顧問,我幫你快速抓一下方向。<br>你現在是想做網站,還是想用AI省人力?</div>"; // 🚀 送出功能 async function sendMessage() { const msg = input.value.trim(); if (!msg) return; // 🔒 鎖按鈕 btn.disabled = true; // 🧹 清空輸入 input.value = ""; // 💬 顯示使用者 chat.innerHTML += "<div>你:" + msg + "</div>"; // 🤖 顯示思考中 const loadingId = "ai-" + Date.now(); chat.innerHTML += `<div id="${loadingId}">AI:思考中...</div>`; // 🔽 自動滾到底 chat.scrollTop = chat.scrollHeight; try { const res = await fetch("http://47.84.93.23:3001/api/chat", { method: "POST", headers: {"Content-Type": "application/json"}, body: JSON.stringify({ message: msg }) }); const data = await res.json(); document.getElementById(loadingId).innerHTML = "AI:" + (data.reply || "無回應"); } catch (err) { document.getElementById(loadingId).innerHTML = "AI:系統忙碌,請稍後再試"; } // 🔓 解鎖 btn.disabled = false; // 🔽 再滾一次 chat.scrollTop = chat.scrollHeight; } // 🖱️ 按鈕送出 btn.onclick = sendMessage; // ⌨️ Enter送出(手機/電腦都好用) input.addEventListener("keypress", function (e) { if (e.key === "Enter") { sendMessage(); } }); }); |
|
|
|
| jetbomb | 發表日: 2026-04-28 09:38 更新: 2026-04-28 09:38 |
網站管理員 ![]() ![]() 註冊日: 2025-10-24 來自: MCSD HUI HUA PENG 發表數: 383 |
import express from 'express';
import axios from 'axios'; import dotenv from 'dotenv'; import cors from 'cors'; dotenv.config(); const app = express(); const port = 3001; app.use(cors()); app.use(express.json()); console.log("KEY:", process.env.DASHSCOPE_API_KEY); /* 🧠 對話記憶(簡單版) */ let conversation = []; /* 🔒 允許來源(防外站濫用) */ const allowedOrigins = [ "https://pk530.fun", "http://pk530.fun" ]; /* 🚦 簡單限流(防狂打) */ let lastRequestTime = 0; app.use((req, res, next) => { const origin = req.headers.origin; // 允許沒有 origin(例如 curl / 自測) if (origin && !allowedOrigins.includes(origin)) { return res.status(403).json({ reply: "禁止訪問" }); } // 限流(1秒1次) const now = Date.now(); if (now - lastRequestTime < 1000) { return res.json({ reply: "請稍等一下再發送" }); } lastRequestTime = now; next(); }); app.post('/api/chat', async (req, res) => { try { const userMessage = req.body.message; /* ❗ 基本防呆 */ if (!userMessage || userMessage.length > 200) { return res.json({ reply: "請輸入合理內容" }); } console.log("👤 使用者:", userMessage); /* 🧠 加入使用者訊息 */ conversation.push({ role: 'user', content: userMessage }); const messages = [ { role: 'system', content: `你是一位「專門幫用戶挑選AI與雲端服務的銷售顧問」。 你主要提供: - AI客服系統 - 網站建置 - 雲端/VPS服務 【任務】 引導需求 → 推薦方案 → 促成成交 【策略】 - 模糊問題 → 先聊天引導 - 明確需求 → 提供2個選項(不要超過2個) - 回答要短、像真人 【節奏】 - 先回答問題 - 再引導 - 不要一開始推銷 【收尾】 當需求明確時: → 問「要不要幫你規劃?」 【語氣】 自然、專業、像朋友 ` }, ...conversation ]; const response = await axios.post( 'https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions', { model: 'qwen3.5-flash', messages: messages, max_tokens: 120 }, { headers: { Authorization: `Bearer ${process.env.DASHSCOPE_API_KEY}`, 'Content-Type': 'application/json' }, timeout: 10000 // 防卡死 } ); const reply = response.data?.choices?.[0]?.message?.content || response.data?.output?.text || "(AI沒有回內容)"; console.log("🤖 AI:", reply); /* 🧠 加入AI回覆 */ conversation.push({ role: 'assistant', content: reply }); /* 🧠 限制記憶長度 */ if (conversation.length > 20) { conversation = conversation.slice(-20); } res.json({ reply }); } catch (err) { console.error("❌ 錯誤:", err.response?.data || err.message); res.status(500).json({ reply: "系統暫時忙碌,請稍後再試" }); } }); app.listen(port, () => { console.log(`🚀 AI server running on port ${port}`); }); |
|
|
|
| jetbomb | 發表日: 2026-04-28 02:07 更新: 2026-04-28 02:07 |
網站管理員 ![]() ![]() 註冊日: 2025-10-24 來自: MCSD HUI HUA PENG 發表數: 383 |
$ node server.js
|
|
|
|
| jetbomb | 發表日: 2026-04-27 22:04 更新: 2026-04-27 22:04 |
網站管理員 ![]() ![]() 註冊日: 2025-10-24 來自: MCSD HUI HUA PENG 發表數: 383 |
import express from 'express';
import axios from 'axios'; import dotenv from 'dotenv'; import cors from 'cors'; dotenv.config(); console.log("KEY:", process.env.DASHSCOPE_API_KEY); const app = express(); const port = 3001; app.use(cors()); app.use(express.json()); app.post('/api/chat', async (req, res) => { try { const userMessage = req.body.message; const response = await axios.post( 'https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions', { model: 'qwen3.5-flash', messages: [ { role: 'system', content: '你是AI客服,請清楚回答並引導使用者購買服務。' }, { role: 'user', content: userMessage } ], max_tokens: 300 }, { headers: { Authorization: `Bearer ${process.env.DASHSCOPE_API_KEY}`, 'Content-Type': 'application/json' } } ); const reply = response.data?.choices?.[0]?.message?.content; res.json({ reply: reply || '無回應' }); } catch (err) { console.error("完整錯誤↓↓↓↓↓↓"); console.error(err.response?.data || err.message); res.status(500).json({ reply: err.response?.data || err.message }); } }); app.listen(port, () => { console.log(`AI server running on port ${port}`); }); |
|
|
|
| jetbomb | 發表日: 2026-04-27 22:03 更新: 2026-04-27 22:03 |
網站管理員 ![]() ![]() 註冊日: 2025-10-24 來自: MCSD HUI HUA PENG 發表數: 383 |
curl -X POST http://localhost:3001/api/chat -H "Content-Type: application/json" -d "{\"message\":\"你能做什麼?\"}"
Administrator@iZg4wa34578ty2Z MINGW64 /c/FoxServ/ai-api $ curl -X POST http://localhost:3001/api/chat -H "Content-Type: application/json" -d "{\"message\":\"你能做什麼?\"}" % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 938 100 912 100 26 68 1 0:00:26 0:00:13 0:00:13 222{"reply":"您好!👋 收到您的訊息了,不過剛才的內容似乎因為編碼問題顯示成了亂碼(ʲN),辛苦您確認一下是否有誤輸喔!😅\n\n別擔心,無論您需要什麼協助,我都隨時待命!為了更好地幫您節省時間,這裡有幾個我們目前最熱門的服務方案供您參考:\n\n1. 📦 **專業雲端儲存服務**:大容量、高穩定,隨時存取重要資料。\n2. 📊 **AI 智能分析報告**:自動生成洞察報告,助您快速決策。\n3. 🛡️ **企業級安全防護**:全方位數據加密,守護您的資產安全。\n\n✨ **限時優惠提示**:現在升級任何服務,即可享有 **首月 85 折** 的專屬禮遇,還贈送額外容量空間!\n\n不知道您目前是比較想了解哪方面的需求呢?或是可以直接告訴我您的預算範圍,讓我為您推薦最適合的方案吧!💪"} Administrator@iZg4wa34578ty2Z MINGW64 /c/FoxServ/ai-api |
|
|
|
| jetbomb | 發表日: 2026-04-27 19:25 更新: 2026-04-27 19:25 |
網站管理員 ![]() ![]() 註冊日: 2025-10-24 來自: MCSD HUI HUA PENG 發表數: 383 |
curl https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation -H "Authorization: Bearer sk-db9c8c712ee845e3b88bc22a1cdf72e0" -H "Content-Type: application/json" -d '{
"model": "qwen-plus", "input": { "messages": [ {"role": "user", "content": "測試一下,你能正常回話嗎?"} ] }, "parameters": { "max_tokens": 200 } }' |
|
|
|
| jetbomb | 發表日: 2026-04-27 19:09 更新: 2026-04-27 19:09 |
網站管理員 ![]() ![]() 註冊日: 2025-10-24 來自: MCSD HUI HUA PENG 發表數: 383 |
sk-db9c8c712ee845e3b88bc22a1cdf72e0
|
|
|



