Claude技能库构建指南:从提示词工程到社区化应用

news2026/5/7 18:46:55
1. 项目概述一个技能库的诞生与价值最近在折腾一些AI应用特别是围绕Claude这个模型发现了一个挺有意思的现象很多开发者都在尝试将Claude的能力“模块化”、“技能化”。这让我想起了早期软件开发的函数库或者更近一点的像LangChain这样的框架。但今天要聊的这个项目bloody2634/claud-skills它给我的第一感觉更纯粹——它像是一个由社区驱动的、专门为Claude模型打造的“技能配方”集合。简单来说你可以把它理解为一个GitHub仓库里面存放着各种能让Claude完成特定任务的“指令集”或“工作流模板”。这些“技能”可能是一个精心设计的提示词Prompt一段定义了复杂推理链的脚本或者是一个集成了外部工具调用的小型应用。它的核心价值在于“复用”和“共享”你不需要从零开始研究如何让Claude写好一篇技术博客、分析一份财务报表或者调试一段复杂代码在这里很可能已经有人把经过实战检验的“最佳配方”开源出来了你拿过来稍作调整就能用。这个项目特别适合几类人一是AI应用开发者可以快速集成成熟的能力加速产品开发二是提示词工程师或AI研究者可以在这里学习高级的提示工程技巧和任务分解方法三是普通的Claude重度用户想解锁一些自己摸索不出来的高阶用法。它解决的痛点很明确降低使用高级AI模型的门槛将个体经验转化为可传播、可迭代的公共资产。接下来我们就深入这个仓库看看一个优秀的Claude技能究竟是如何被设计和构建出来的。2. 技能库的核心架构与设计哲学2.1 技能的定义与标准化格式打开claud-skills仓库这里我们以分析其典型结构为例你会发现它并非一堆杂乱无章的文本文件。一个成熟的技能库其首要任务是建立一套清晰的技能定义标准。这就像一家餐厅的标准化菜谱需要明确记录食材、步骤和火候。一个典型的Claude技能可能包含以下几个核心部分技能元数据这相当于技能的“身份证”。通常是一个JSON或YAML文件包含技能名称name、版本version、创建者author、简短描述description、适用的Claude模型版本如claude-3-opus-20240229以及一个唯一标识符id。这部分信息对于技能的检索、管理和版本控制至关重要。核心提示词这是技能的“灵魂”。它不是一个简单的提问而是一个结构化的、包含上下文、角色设定、任务步骤、输出格式要求的完整指令集。一个高级提示词往往会采用“少样本学习”Few-shot Learning的方式提供几个输入输出的例子让Claude更好地理解任务模式。输入/输出规范明确定义技能接受什么样的输入例如一段代码、一个URL、一个CSV数据片段以及承诺输出什么样的格式例如Markdown表格、JSON对象、重构后的代码块。清晰的接口定义是技能能够被可靠集成到自动化流程中的基础。测试用例与验证一个负责任的技能会附带测试用例。这包括典型的输入和期望的输出用于验证技能在当前模型版本下的表现是否稳定。这有点像单元测试能保证技能在迭代过程中不会“退化”。依赖与配置说明有些技能可能需要调用外部API如搜索引擎、数据库、访问特定文件或者需要一些环境变量。这部分会详细列出所有外部依赖和必要的配置步骤。注意在设计技能时提示词的“鲁棒性”是关键。你需要假设用户可能会输入一些不完整、有歧义甚至带点错误的数据。好的提示词会在开头就通过清晰的规则和例子引导用户提供规范化的输入并对可能的边界情况做出预设处理。2.2 技能的分类与组织逻辑一个技能库随着内容增长如果没有良好的分类体系很快就会变得难以使用。claud-skills这类项目通常会采用多维度分类法按功能领域这是最直观的分类。例如编程与开发代码生成、代码解释、调试、重构、单元测试生成、API文档生成。写作与内容创作技术博客写作、营销文案、创意故事、邮件起草、学术润色。数据分析与处理数据清洗建议、图表描述生成、从文本中提取结构化信息、总结趋势。学习与研究概念解释、问答对生成、学习计划制定、文献摘要。工具增强与Shell交互、操作浏览器、管理日历、处理电子邮件通常需要结合其他工具。按复杂度等级基础技能单一指令即可完成如“翻译以下文本”。复合技能需要多步推理或调用多个子技能如“分析这个GitHub仓库的README总结其技术栈并评估其代码活跃度”。工作流技能定义了完整的、包含条件判断和循环的自动化流程通常需要外部的编排引擎来驱动。按实现技术纯提示词技能完全依赖Claude的内置能力通过精妙的提示词工程实现。工具调用技能提示词中声明了需要调用哪些外部工具函数并在执行时实际调用。代理技能将Claude作为核心“大脑”结合长期记忆、知识库检索等能力形成可以持续对话和完成复杂目标的智能体。在仓库中这些分类通常通过目录结构来体现。例如根目录下可能有coding/,writing/,analysis/,workflows/等文件夹每个文件夹内再按具体任务细分。2.3 版本控制与社区协作机制既然托管在GitHubgit的那一套协作流程自然就是技能库的血液。但这在AI技能语境下有特殊含义技能的版本化模型在更新如从Claude 3 Sonnet升级到Opus提示词的最佳实践也在进化。一个技能应该有版本号如v1.0.1。当发现更优的提示词结构或者为了适配新模型而进行调整时应该创建新版本并在元数据中说明变更日志。分支策略main或master分支存放稳定、经过验证的技能。开发者可以在feature/分支上开发新技能或改进现有技能通过Pull RequestPR提交。PR的描述里应详细说明技能的用途、设计思路并附上测试结果。评审与合并合并PR前需要评审。评审重点不是代码语法而是提示词的有效性是否清晰、无歧义、能稳定产生预期输出安全性技能是否可能被滥用如生成恶意内容是否有适当的输入过滤或警告通用性技能解决的是一个普遍问题还是过于特定的个人需求文档完整性元数据、README、示例是否齐全问题追踪与讨论用户在使用某个技能时遇到问题可以提交Issue。这可能是遇到了模型未预料到的边缘案例或者是技能依赖的外部服务发生了变化。通过Issue的公开讨论可以共同优化技能形成知识沉淀。这种开源协作模式使得技能库不再是静态的存档而是一个活生生的、不断进化的生态系统。每个人的使用反馈和改进都能让整个社区受益。3. 从零构建一个高质量Claude技能实战指南3.1 技能构思与需求拆解假设我们现在想为这个技能库贡献一个新技能“代码审查助手”。它的目标是让Claude像一位经验丰富的资深工程师一样对提交的代码片段进行深度审查。首先我们不能只有一个模糊的想法。需要将需求拆解成具体、可评估的条目核心功能识别潜在的bug如空指针、边界条件错误、资源未释放。指出代码风格问题违反PEP 8、Google Java Style等。发现性能瓶颈低效的循环、重复计算、不必要的数据库查询。评估安全性风险SQL注入、XSS、硬编码密钥。提出具体的、可操作的改进建议并给出优化后的代码示例。区分问题的严重等级Critical, High, Medium, Low。输入一段特定语言如Python的代码片段可附带简短的上下文说明如函数用途。输出一份结构化的审查报告至少包含问题列表每个问题有描述、位置、严重性、建议修复方案和一个总体评价。非功能性需求准确性指出的问题必须是真实存在的避免“假阳性”。教育性解释为什么这是个问题而不仅仅是抛出结论。建设性语气友好旨在帮助改进而非批评。这个拆解过程本身就是在为编写提示词做准备。它迫使你思考Claude需要哪些信息以及你期望它以何种形式回应。3.2 提示词工程编写技能的“大脑”这是最核心、最考验功力的环节。针对“代码审查助手”我们不能简单地说“请审查这段代码”。那样得到的反馈会流于表面且不稳定。我们需要构建一个高度结构化和情境化的提示词。一个强大的提示词通常遵循以下结构# 角色与任务设定 你是一位拥有15年经验、极其严谨的{编程语言}高级工程师擅长代码审查和性能优化。现在请你对用户提供的代码进行一场专业的、深入的代码审查。 # 审查准则赋予其专业知识 你的审查必须严格涵盖以下维度并按优先级排序 1. **正确性与健壮性**查找逻辑错误、未处理的异常、边界条件、竞态条件。 2. **安全性**查找注入漏洞、敏感信息泄露、不安全的反序列化等。 3. **性能**分析算法复杂度、识别低效操作如N1查询、内存使用。 4. **可读性与可维护性**检查命名、注释、函数长度、代码结构是否符合最佳实践如{特定风格指南}。 5. **设计**评估模块化、耦合度、是否遵循SOLID原则等针对面向对象代码。 # 输出格式指令强制结构化输出 你必须以以下JSON格式输出审查结果不要有任何额外的解释或前缀 json { overall_summary: 一段总体评价指出最严重的几个问题。, issues: [ { type: BUG|SECURITY|PERFORMANCE|STYLE|DESIGN, severity: CRITICAL|HIGH|MEDIUM|LOW, location: 文件名:行号如 main.py:15-20, description: 清晰描述问题是什么。, why_it_matters: 解释这个问题为什么重要可能引发什么后果。, suggestion: 给出具体的修复建议。如果可以提供修改后的代码片段。 } // ... 更多问题 ], positive_findings: [列出代码中做得好的地方至少1-2点。] }工作流程引导推理链请按此步骤思考通读代码理解其意图和上下文。逐行分析对照上述五个维度标记潜在问题点。对每个问题点评估其严重性并构思修复方案。组织发现区分轻重缓急。生成最终的JSON报告。示例少样本学习以下是一个简单的示例演示输入和期望的输出格式 用户输入代码:def calculate_average(numbers): sum 0 for i in range(len(numbers)): sum numbers[i] return sum / len(numbers)你的输出审查报告:{ overall_summary: 函数基本功能正确但存在潜在的除零错误和可读性问题。, issues: [ { type: BUG, severity: HIGH, location: N/A, description: 当输入的空列表时len(numbers)为0会导致ZeroDivisionError。, why_it_matters: 这将使程序崩溃影响稳定性。, suggestion: 在函数开头添加检查if not numbers: return 0 或抛出更合适的异常。 }, { type: STYLE, severity: LOW, location: N/A, description: 变量名sum是Python内置函数名覆盖它是不好的实践。, why_it_matters: 这可能导致后续代码中无法使用内置的sum()函数引起混淆。, suggestion: 将变量名改为total或sum_total。 } ], positive_findings: [逻辑清晰完成了计算平均值的基本功能。] }现在开始审查用户提供的代码。用户代码{user_code}这个提示词融合了**角色扮演**资深工程师、**任务分解**五大维度、**结构化输出约束**JSON格式、**思维链引导**五步思考法和**少样本学习**一个完整例子。它能极大地提高Claude输出结果的稳定性、深度和可用性。 ### 3.3 技能封装与测试 有了核心提示词下一步是把它“封装”成一个标准的技能。在 claud-skills 的语境下这意味着创建一个独立的目录例如 code-review/python-assistant/。 在这个目录里我们创建以下文件 1. skill.json (元数据) json { id: code-review-python-v1, name: Python代码深度审查助手, version: 1.0.0, author: YourName, description: 对Python代码进行多维度正确性、安全性、性能、风格、设计的深度审查并生成结构化报告。, model: claude-3-opus-20240229, tags: [code-review, python, refactoring, security], input_schema: { type: object, properties: { code: {type: string, description: 需要审查的Python代码}, context: {type: string, description: 可选的代码上下文说明} }, required: [code] } } 2. prompt.md存放我们上面编写的那段完整的提示词模板。其中 {user_code} 和 {特定风格指南} 是占位符。 3. examples/ 目录存放几个测试用例。 * example1_input.py一段有典型问题的代码。 * example1_output.json期望Claude生成的审查报告。 * 可以准备2-3个这样的例子覆盖不同复杂度的场景。 4. README.md技能的使用说明包括快速开始、参数解释、输出示例以及如何与CI/CD工具集成等。 **测试是确保技能质量的关键**。你需要 * **单元测试**用准备好的例子调用Claude API或通过Chat界面将输出与预期对比检查关键字段是否存在且符合预期。 * **模糊测试**输入一些边缘案例如空代码、语法错误的代码、超长代码看技能是否能优雅处理例如返回一个友好的错误信息而不是崩溃或胡言乱语。 * **人工评估**找一些真实的、中等复杂度的开源代码片段进行审查判断其发现的问题是否切中要害建议是否合理。 **实操心得**测试时**不要只测“正面案例”**。一定要测试技能在“坏输入”下的表现。一个健壮的技能应该能处理无效输入并给出清晰的指引而不是被“带偏”产生无意义或有害的输出。这通常需要在提示词的开头或结尾加入一些防御性指令比如“如果提供的输入不是有效的Python代码请直接指出这一点并停止审查过程。” ## 4. 技能库的集成与应用场景 ### 4.1 个人工作流集成效率倍增器 对于开发者个体这些技能可以直接融入日常工具链带来立竿见影的效率提升。 * **IDE/编辑器插件**通过开发或配置插件可以在VS Code、JetBrains全家桶中右键选中代码调用“代码审查助手”技能审查结果直接显示在问题窗口。同样可以集成“代码解释”、“生成单元测试”、“生成文档字符串”等技能。 * **命令行工具**将技能封装成命令行工具。例如写一个 cr 命令cr review myfile.py 即可生成审查报告或者 cr explain 来理解一段复杂的bash脚本。 * **笔记与知识管理**使用“文本总结”、“关键信息提取”、“问答对生成”等技能快速处理阅读的论文、技术文章、会议记录将冗长内容转化为结构化的知识卡片存入Obsidian、Logseq等工具。 * **写作辅助**在撰写技术文档、设计稿、项目周报时使用“技术写作润色”、“逻辑结构优化”等技能提升文本的专业性和清晰度。 **集成关键**通常需要编写一个简单的包装脚本。这个脚本负责三件事1) 读取本地文件或接收输入2) 组合技能提示词和用户输入调用Claude API通过官方SDK或HTTP请求3) 解析并格式化Claude的返回结果以适合当前场景的方式呈现如在终端彩色输出、在编辑器侧边栏显示。 ### 4.2 团队与CI/CD流水线集成质量守门员 在团队协作和自动化流程中技能库的价值被进一步放大。 * **自动化代码审查**在Git平台的Pull Request流程中集成“代码审查助手”技能。每当有新的PR提交自动化机器人如GitHub Actions, GitLab CI会运行该技能对变更的代码进行初步审查并将结果以评论的形式提交到PR中。这可以作为人工审查的前置过滤器捕捉明显的风格问题和常见缺陷。 * **配置示例**在GitHub Actions的配置文件中添加一个步骤调用封装好的审查脚本将 git diff 的内容作为输入传给技能。 * **文档与知识库同步**当API接口变更或核心逻辑修改时可以触发“API文档生成”或“更新日志生成”技能自动生成初版文档确保文档不滞后于代码。 * **测试用例生成与补充**针对核心函数或修改的模块运行“单元测试生成”技能为开发人员提供测试用例草稿提高测试覆盖率。 * **部署与运维**在部署流程中使用“配置检查”或“日志分析模式识别”技能对配置文件或历史日志进行快速扫描排查潜在配置错误或已知错误模式。 **注意事项**在CI/CD中集成AI技能必须谨慎处理**敏感信息**。确保技能不会将代码发送到未经授权的第三方服务应使用官方API或可信的代理并且要审查提示词和技能本身避免其输出可能包含的许可证或安全性建议存在误导。此外AI审查结果应标记为“辅助建议”最终的合并决策必须由人类工程师做出。 ### 4.3 构建复杂智能体与自动化工作流 单一的技能是工具而组合多个技能并加入逻辑判断和状态管理就能构建出更强大的**智能体**。 * **研究助手智能体**结合“网页内容提取”、“信息总结”、“多源信息对比”、“报告撰写”等多个技能。你只需给它一个研究主题它可以自动规划步骤搜索相关资料、提取核心信息、对比不同观点、最终生成一份带有引用的综合报告草案。 * **客户支持分析智能体**结合“情感分析”、“问题分类”、“解决方案匹配”、“回复草拟”等技能。自动分析涌入的客户支持邮件或聊天记录识别紧急问题和普遍情绪从知识库中匹配解决方案并为客服人员生成回复建议。 * **内部流程自动化智能体**例如一个“会议纪要处理智能体”。它接收录音转写的文字依次调用“发言者分离”、“关键决策点提取”、“待办事项识别”、“纪要格式化”等技能最终输出结构清晰的会议纪要和行动项列表。 构建这类智能体通常需要一个编排框架。你可以用简单的Python脚本配合状态机来实现也可以使用更专业的框架如LangChain、LlamaIndex它们提供了连接多个工具技能、管理对话记忆、控制流程的组件。claud-skills 中的技能可以很容易地被封装成这些框架中的“Tool”或“Agent”来使用。 ## 5. 维护、迭代与社区贡献的实践 ### 5.1 技能的持续优化与评估 一个技能发布后工作并未结束。模型在更新最佳实践在变化技能也需要持续维护。 1. **建立评估基准**为你的技能定义一套可量化的评估指标。对于“代码审查助手”可以收集一个包含各种已知bug的代码测试集用技能去跑计算其**召回率**找到了多少已知问题和**精确率**找到的问题中有多少是真实的。虽然这需要人工标注但对于核心技能是值得的。 2. **监控与反馈收集**如果技能被集成到某个应用或流程中建立反馈机制。例如在AI代码审查评论旁加一个“有帮助/没帮助”的按钮收集用户的隐式反馈。 3. **定期用新数据测试**随着Claude模型版本更新用你的测试用例重新运行技能观察输出是否有退化或改进。新模型可能带来新的能力或许可以简化你的提示词或者增加更复杂的审查维度。 4. **迭代提示词**根据反馈和评估结果持续微调提示词。可能某个指令表述有歧义或者少样本示例不够典型。迭代过程是修改 - 测试 - 评估 - 再修改。 ### 5.2 向社区贡献技能的最佳实践 如果你想向 bloody2634/claud-skills 这样的项目贡献自己的技能遵循以下实践能大大提高被接纳的概率 1. **先讨论后编码**在GitHub上提交一个Issue描述你想贡献的技能创意、其解决的具体问题、目标用户。与维护者和其他贡献者讨论这个技能的必要性和设计思路避免重复造轮子或方向偏差。 2. **遵循项目规范**仔细阅读项目的 CONTRIBUTING.md 文件。严格遵守其规定的目录结构、文件命名、元数据格式、文档模板。这能极大减轻维护者的审核负担。 3. **提交完整的包**确保你的PR包含所有必需文件skill.json, prompt.md, README.md, examples/, 以及必要的测试脚本。README.md 里要有清晰的使用示例和效果截图如果适用。 4. **编写有意义的提交信息**提交信息应清晰说明修改内容例如 feat: add Python code review assistant skill 或 fix(cv-assistant): improve prompt for handling blurry images。 5. **积极回应评审意见**维护者可能会要求你修改提示词、补充测试用例或完善文档。积极、友好地回应这些反馈并进行修改。代码评审是提升技能质量和学习社区标准的过程。 ### 5.3 常见陷阱与避坑指南 在创建和使用Claude技能时我踩过不少坑这里分享一些关键的经验教训 * **陷阱一提示词过于冗长或复杂**。虽然细节重要但过长的提示词可能会让模型迷失重点或消耗过多上下文窗口。**策略**优先确保核心指令清晰有力非核心的约束可以放在后面或通过示例来体现。定期尝试能否用更简洁的表达达到相同效果。 * **陷阱二过度依赖模型的最新知识**。提示词里写“请使用最新的XXX库”但模型训练数据有截止日期它可能不知道这个库。**策略**对于依赖外部实时信息或特定版本知识的技能要么在提示词中明确提供所需信息要么将技能设计为“需要用户提供上下文”。 * **陷阱三忽视输出格式的稳定性**。即使明确要求输出JSON模型偶尔也可能在JSON外加一些解释性文字。**策略**在调用技能的客户端代码中做好后处理。使用 json.loads() 并配合 try-catch或者用正则表达式从响应中提取JSON部分。更稳健的做法是在提示词中强调“输出必须是纯粹的、可被直接解析的JSON不要有任何额外文本”。 * **陷阱四技能在边缘案例下行为异常**。比如给“代码审查助手”输入一段非代码的散文它可能开始“审查”文章的语法。**策略**在提示词开头加入输入验证逻辑例如“首先请判断用户提供的是否是有效的{语言}代码。如果不是请直接回复‘输入不是有效的{语言}代码无法进行审查。’并停止。” * **陷阱五忽略成本和延迟**。复杂的技能可能涉及多轮对话或很长的提示词这会增加API调用成本和响应时间。**策略**在技能元数据中标注“预计token消耗”和“典型响应时间”。对于高频使用的技能要持续优化提示词在效果和效率间取得平衡。 构建和维护一个像 claud-skills 这样的技能库其意义远不止于收集一些提示词。它是在为AI时代构建可复用的、标准化的“能力组件”。随着模型能力的持续进化这些技能本身也会不断迭代和组合催生出我们目前难以想象的自动化应用。对于开发者而言参与其中不仅是为了提高当下的效率更是在亲身实践和塑造未来人机协作的范式。从编写一个解决自己痛点的小技能开始提交到社区你会发现与一群志同道合的人共同建造本身就是一种巨大的乐趣和收获。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2592329.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…

龙虎榜——20250610

上证指数放量收阴线&#xff0c;个股多数下跌&#xff0c;盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型&#xff0c;指数短线有调整的需求&#xff0c;大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的&#xff1a;御银股份、雄帝科技 驱动…

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…