极客油画

对话式编程助手

liteLLM

用于将 openai chat/completions API 转成 Anthropic Messages API

步骤:

claude code

修改.claude.json,实现跳过登陆

  • 找到配置文件位置:
    • windows: %USERPROFILE%\.claude.json
    • macOS/linux: ~/.claude.json
  • 添加配置字段:
    {
      "hasCompletedOnboarding": true
    }
    

~/.claude/setting.json的常用配置:

{
    "env": {
        "ANTHROPIC_API_KEY": "API密钥环境变量名",
        "ANTHROPIC_AUTH_TOKEN": "认证令牌",
        "ANTHROPIC_BASE_URL": "API基础地址",
        "ANTHROPIC_DEFAULT_SONNET_MODEL": "Sonnet模型槽位映射",
        "ANTHROPIC_DEFAULT_OPUS_MODEL": "Opus模型槽位映射",
        "ANTHROPIC_DEFAULT_HAIKU_MODEL": "Haiku模型槽位映射",
        "API_TIMEOUT_MS": "3000000",
        "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1"
    },
    "permissions": {
        "allow": [
            "允许工具使用的规则数组",
            "Bash(npm run lint)",
            "Bash(npm run test:*)",
            "Read(~/.zshrc)"
        ],
        "deny": [
            "拒绝工具使用的规则数组",
            "Bash(curl:*)",
            "Read(./.env)",
            "Read(./secrets/**)"
        ],
        "ask": ["在工具使用时请求确认的规则数组"],
        "additionalDirectories": "Claude可以访问的其他工作目录",
        "defaultMode": "默认权限模式"
    },
    "mcpServers": {
        "amap-maps-streamableHTTP": {
            "url": "https://mcp.amap.com/mcp?key=${AMAP_KEY}"
        }
    },
    "hooks": {
        "PreCompact": [
            {
                "type": "command",
                "command": "git diff --stat"
            }
        ],
        "Notification": [
            {
                "type": "command",
                "command": "echo '对话已结束' | growlnotify"
            }
        ]
    },
    "enabledPlugins": {
        "superpowers@claude-plugins-official": true,
        "gopls-lsp@claude-plugins-official": true,
        "frontend-design@claude-plugins-official": true,
        "code-simplifier@claude-plugins-official": true,
        "code-review@claude-plugins-official": true,
        "context7@claude-plugins-official": true,
        "pr-review-toolkit@claude-plugins-official": true,
        "security-guidance@claude-plugins-official": true,
        "skill-creator@claude-plugins-official": true,
        "feature-dev@claude-plugins-official": true
    },
    "model": "默认模型名称",
    "theme": "dark-daltonized",
    "autoMemoryEnabled": true,
    "verbose": true,
    "language": "响应语言",
    "preferredNotifChannel": "auto"
}

MCP和skill

MCP(Model Context Protocol)和Agent Skills都是由Anthropic公司提出的,但两者的提出时间和定位有所不同。

  1. MCP(模型上下文协议)
  • 提出时间2024年11月25日
  • 提出公司:Anthropic
  • 核心定位:解决大模型与外部工具、数据源的连接标准化问题,类似于AI时代的"USB接口"
  • 仓库地址:https://github.com/modelcontextprotocol
  1. Agent Skills
  • 首次推出2025年10月在Claude Code中推出
  • 开放标准发布2025年12月18日正式发布为跨平台开放标准
  • 提出公司:Anthropic
  • 核心定位:解决AI模型的领域专业知识加载问题,类似于AI时代的"通用驱动程序"
  • 仓库地址:https://github.com/anthropics/skills
  • 存放位置:个人级:~/.claude/skills/ ; 项目级:.claude/skills/

MCP是"连接层":定义了AI模型如何安全、标准化地接入外部工具和数据源(如GitHub、Google Drive、Slack等)。

Skills是"能力层":定义了AI模型如何使用这些连接来完成具体的业务流程和任务,通过SKILL.md文件封装专业知识和工作流程。

这种分层架构让AI开发从"手搓Prompt"的草莽时代进入了"标准化封装"的工业时代,开发者编写一套Skill就可以在所有支持该标准的AI平台上无缝运行。

大模型的token是怎么算的,问一次算一次token么?

大模型的“Token”通常可以理解为语言模型处理文本的基本单位,它不仅指一个汉字或英文单词,也可能是更小的片段(如子词)。

关于计费,通常不是“问一次”算一次Token,而是按输入和输出的总Token数来计算的:

  • 输入Token:你提交的问题/提示文本会被转换成Token。
  • 输出Token:模型生成的回答也会被转换成Token。
  • 总费用一般按“输入+输出”的Token总数,结合不同模型的单价来计算。

不要浪费deepseek的算力了,DeepSeek提示词库指南

官方地址: https://api-docs.deepseek.com/zh-cn/prompt-library/

避坑指南:

  • 复杂度陷阱:提示词≠越长越好(实测20字提示>200字小作文)
  • 迭代误区:3次追问未果→立即重构提示词
  • 新手公式:需求场景+示例样本+输出格式

DISC原则是LLM时代的交互协议:本质是把LLM当实习生,指令越像操作手册,结果越靠谱

  • 说人话(Definitive):别让LLM猜,直接下明确指令(如“递归改循环,以让代码速度提升10倍”)。
  • 给例子(Illustrative):像老师教学生:甩个参考答案,LLM秒懂你要啥。
  • 分步骤(Structured):把复杂任务拆成任务清单,LLM按顺序干活不跑偏。
  • 定格式(Controlled):让LLM交作业时自带标准答题卡,方便你直接复制粘贴。

常用提示词:

  • 代码改写提示词:下面这段代码的效率很低,且没有处理边界情况,请先解释这段代码的问题与解决方法,然后进行优化
  • 代码生成:请帮我用HTML生成一个五子棋游戏,所有代码都保存在一个HTML中。
  • 结构化输出:我将提供给你一段新闻内容,请你分析新闻内容,并提取其中的关键信息,以JSON的形式输出,输出的JSON需遵守以下的格式:
    {
        "entity": <新闻实体>,
        "time": <新闻时间,格式为 YYYY-mm-dd HH:MM:SS,没有请填 null>,
        "summary": <新闻内容总结>
    }
    

几个重要的点:

  • 如何和AI交流时先尽量把需求聊透彻,然后再进入写代码的阶段。
  • 如何进行上下文管理,在合适的checkpoint重新开一个agent。
  • skill和MCP,不是越多越好。
  • 千万不要选择更差的模型处理更简单的事情:好的模型,最终肯定是更省钱的,因为办事效率高。

安全案例: AI云端同步和开源漏洞导致的境外窃密

某军工研发所的结构工程师,负责设计军机起重架零件图纸(机密级),为了提高绘图效率,他使用一款开源的工业AI绘图辅助工具,用来优化图纸的尺寸标注内核细节修改。

这款工具默认开启“云端同步”功能,工程师在上传图纸时未关闭该功能,也未检查工具的安全资质,导致图纸被自动同步到工具的云端服务器。

而这款开源AI工具的服务器存在明显安全漏洞,未设置严格的访问权限,不久后就被境外IP非法访问,部分图纸片段被下载窃取。

后续调查发现,这款工具的后台未进行涉密加密处理,甚至有境外势力人员参与工具的开源代码维护,相当于“开门揖盗”,把涉密图纸主动送到了境外势力手中。

虽未泄露完整图纸,但已对国防安全造成潜在威胁,该工程师被判处有期徒刑,研究所也承担了相应的管理责任。


专题:

本文发表于 2025-11-18,最后修改于 2025-11-18。

本站永久域名「 jiavvc.top 」,也可搜索「 极客油画 」找到我。


上一篇 « C程序设计语言-第1章导言 下一篇 » markdown-typst

赞赏支持

请我吃鸡腿 =^_^=

i ysf

云闪付

i wechat

微信

推荐阅读

Big Image