javascript 实现 deepseek,无需显卡,秒级响应,支持本地部署

1,116 阅读2分钟

本文首发于公众号 极客枫哥 ,日更分享各种好玩的软件、编程知识和个人成长故事

大家好啊~最近 deepseek非常火热,但是官网服务确很不稳定,非常影响体验。于是我使用 cursor自己实现了一个 deepseek(手动狗头),支持本地部署,效果媲美官方,大家可以一起玩一玩。

安装步骤

本地有 node运行环境,然后将下面的代码保存为 chat.js

在终端中执行 node chat.js即可。

const readline = require('readline');

// 创建 readline 接口
const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

// 模拟 AI 响应
function getAIResponse() {
    return new Promise((resolve) => {
        console.log('AI: 【思考中】');
        setTimeout(() => {
            resolve('【服务器繁忙,请稍后重试】');
        }, 1000);
    });
}

// 主对话循环
async function chat() {
    while (true) {
        // 获取用户输入
        const userInput = await new Promise(resolve => {
            rl.question('你: ', (answer) => {
                resolve(answer);
            });
        });

        // 检查是否退出
        if (userInput.toLowerCase() === 'exit' || userInput.toLowerCase() === 'quit') {
            console.log('程序已退出。');
            rl.close();
            break;
        }

        // 获取并显示 AI 响应
        const aiResponse = await getAIResponse();
        console.log(`AI: ${aiResponse}`);
    }
}

// 启动对话
chat(); 

效果如下

哈哈,是不是一模一样?

本文纯属图一乐,看看就行了,灵感来源于 linux.do论坛。

python 版本

import time
import requests

# GitHub Gist 配置
GIST_ID = "你的Gist ID"  # 例如 "abc1234567890"
GIST_URL = f"https://api.github.com/gists/{GIST_ID}"

# 发送用户输入到 Gist
def send_message(user_input):
    data = {
        "files": {
            "conversation.txt": {
                "content": f"用户: {user_input}\nAI: (等待回复...)"
            }
        }
    }
    response = requests.patch(GIST_URL, json=data)
    if response.status_code == 200:
        print("[✔] 消息已发送,等待 AI 回复...")
    else:
        print("[❌] 服务器繁忙,请稍后重试")

# 读取 AI 回复
def get_ai_response():
    response = requests.get(GIST_URL)
    if response.status_code == 200:
        content = response.json()["files"]["conversation.txt"]["content"]
        lines = content.split("\n")
        if "AI: " in lines[-1]:
            return lines[-1].replace("AI: ", "").strip()
    return None

if __name__ == "__main__":
    while True:
        user_input = input("你: ")
        if user_input.lower() in ["exit", "quit"]:
            print("程序已退出。")
            break

        send_message(user_input)

        # 轮询检查是否有 AI 回复
        for _ in range(30):  # 轮询 30 次,每次间隔 2 秒,最多等待 1 分钟
            time.sleep(2)
            ai_response = get_ai_response()
            if ai_response and ai_response != "(等待回复...)":
                print(f"AI: {ai_response}")
                break
        else:
            print("[❌] 服务器繁忙,请稍后重试")

python 版本原贴地址