Follow feeds: blogs, news, RSS and more. An effortless way to read and digest content of your choice.
Get Feedersegmentfault.com
Get the latest updates from SegmentFault 最新的文章 directly as they happen.
Follow now 64 followers
Last updated 10 days ago
10 days ago
AI 领域有自己的速度。4 月 29 日凌晨 4 点,Qwen3 正式发布,并开源全部 8 款混合推理模型。发布仅 2 小时,Qwen3...
17 days ago
检查数组所有元素是否满足给定条件如果提供的函数对数组的所有元素返回 true,则返回 true,否则返回 false。思路实现思路如下:使用数组的filter方法对数组执行给定的函数,然后使用count方法获取执行后的结果,再和count方法获取未执行filter方法的结果进行比较。代码实现下面我们来看php和js以及ts代码的实现:php代码实现function all($arr,$fn){ return count(array_filter($arr,$fn)) === count($arr) }使用示例all([2, 3, 4,...
23 days ago
什么是MCP?模型上下文协议(Model Context Protocol, MCP)是一种专为 机器学习模型服务设计的通信协议,旨在高效管理模型推理过程中的上下文信息(如会话状态、环境变量、动态配置等),解决传统协议在复杂AI场景下的局限性。MCP本身并不处理复杂的逻辑;它只是协调AI模型与工具之间的数据和指令流动,MCP简化了AI模型与你的数据、工具和服务的交互方式。MCP 具体可以干啥用上下文感知推理支持动态传递和持久化会话相关的上下文数据(例如用户历史行为、对话状态),使模型能够基于连续交互生成连贯结果。例如,在聊天机器人场景中,MCP会传递对话历史以确保回答的上下文相关性。大白话: 比如客服机器人知道你之前退过货,不用每次都问你订单号给每次对话分配一个“会话ID”,存下聊天记录、用户偏好等多模态数据兼容统一处理文本、图像、传感器数据等多模态输入,通过类型化数据通道**<font (Typed Data Channel)自动适配不同模型输入格式(如Tensor、JSON、Protobuf)。比如你突然说:“用简单点的话解释”,MCP会立刻告诉AI:“用户是小白,别用专业术语”处理复杂任务 [辅助]辅助自动化开发项目,自动化建模,自动化购物,自动化买票等等场景。比如让AI帮你订机票,需要记住出发地、时间、航空公司偏好,一步步完成。为什么需要MCP随着 LLM的发展日益普及...
24 days ago
转眼间,SegmentFault 思否已经走过了 13 个春秋。13 年来,是社区开发者的每一次提问、每一个回答、每一篇文章分享,一点一滴,让思否从一个技术交流小站,成长为百万开发者的精神家园,铸就了思否的今天。时光荏苒,代码未歇。正是大家对技术的热爱、分享与坚持,让我们跨越了一个又一个技术周期,从 "Hello World" 走向了星辰大海。感谢社区所有开发者的一路相伴,是你们让思否走得更远。在未来的日子里,愿我们依然不负热爱,继续前行!在思否成立 13 周年之际,我们怀着最诚挚的感恩之心,为大家准备了两个小活动和小小的福利,庆祝这段共同成长的岁月。小伙伴们来和我们一起过生日吧~📅 活动时间2025.05.30 10:00...
24 days ago
“当我们看到这些数据趋势的时候,一个词浮现在我的眼前——黑客松(Hackathon),AI 领域的项目,快速地出现、快速地停更,他们似乎在做一场真实市场里的黑客松,那么,什么领域涌现了最多项目,哪些方面是停更的重灾区,哪些项目幸存了,激烈竞争的项目们如今怎么样了,我们都尝试着在这份趋势报告里叙述一二。”--王旭,蚂蚁开源技术委员会副主席「根据 OpenDigger 的数据显示,人工智能已经于 2023 年超越云原生,成为协作影响力最大的技术领域」从近十年来 AI、云原生、数据库、前端、操作系统这五大技术领域的发展曲线来看,AI 类项目在近些年得到了快速发展,尤其在 2022 年后发展迅猛。AI 项目影响力总值在 2017...
25 days ago
一、引言在数字化转型浪潮下,企业知识服务体系正经历着深刻变革。如何让用户高效获取所需信息,成为提升产品竞争力和用户满意度的关键。本文将系统介绍葡萄城自研 RAG(Retrieval-Augmented Generation,检索增强生成)智能问答系统的技术创新、架构设计与工程实践,分享葡萄城在智能搜索与问答领域的探索与思考。二、项目缘起:从搜索到智能问答的需求升级1. 现状与挑战葡萄城已建立了完善的知识服务体系,包括标准化文档、技术社区、搜索平台等。现有“葡萄城搜索中心”支持跨平台内容检索,覆盖官网、博客、社区、视频等多种内容源。然而,随着知识库规模的扩大和用户需求的提升,传统基于关键词的搜索方式暴露出诸多不足:用户难以精准定位帮助文档中的功能说明;技术支持人员难以快速查重和定位历史解决方案;方案搜寻效率低,用户体验不佳。2. 技术探索与自研动因随着大语言模型(LLM)技术的快速发展,基于 RAG 的智能问答成为提升知识服务能力的理想路径。我们调研了多种开源与商业化 RAG 方案,发现它们难以直接适配葡萄城多源异构的数据结构和业务需求。为此,我们决定自研 RAG 系统,目标包括:适配多样化内容结构(如帮助文档、论坛帖子等);支持高频动态更新,保障知识库时效性;灵活扩展,满足未来产品演进需求;性能与维护可控,便于长期运维。三、创新点:QA 预生成与“问题对问题”匹配1...
about 1 month ago
核心价值QA 预生成技术采用创新的问答对生成方法,相比传统文本切片技术,能够更精准的构建知识库,显著提升检索与问答效果。企业级场景验证已在真实业务场景中落地应用,实现从传统搜索到智能搜索的无缝升级,用户接受度与满意度明显提升。开源实践支持提供完整技术教程,并开放源代码,助力开发者快速搭建易于落地的高质量企业级 AI 知识库系统。概述GC-QA-RAG 是一款面向葡萄城产品生态(包括 活字格、WYN、SpreadJS 和 GCExcel 等)的检索增强生成(RAG)系统。该系统通过智能文档处理、高效知识检索、精准问答等功能,有效提升了知识管理效率和用户支持体验。本系统创新性地采用了 QA 预生成技术,克服了传统文本切片方法在知识库构建中的若干局限性。经过实践验证,该技术方案能够显著提升检索效果,可为 RAG...
about 1 month ago
作者:MF,SegmentFault思否社区技术编辑近日,国内数据库领域爆发了一起引人关注的知识产权纠纷。涛思数据与浪潮KaiwuDB先后发布严正声明,指责北京开物数智科技有限公司(www.kaiwu.cloud)存在商标侵权和不正当竞争行为。这一事件不仅揭示了开源软件商业化过程中可能面临的法律风险,也为整个行业敲响了合规警钟。事件始末5月20日,涛思数据在其官方微信公众号发布声明,指控北京开物数智科技有限公司在其官网上存在对TDengine时序数据库产品的严重侵权行为,包括擅自盗用并篡改TDengine技术生态架构图,在技术文档中混淆TDengine与KaiwuDB的技术边界,以及通过诱导性技术关联暗示形成错误认知。同日,上海沄熹科技有限公司(浪潮KaiwuDB数据库合法运营主体)也发布声明,指出开物数智与其不存在任何形式的股权关联、技术授权或商业合作关系,开物数智擅自使用KaiwuDB商标标识已构成商标侵权行为。两家企业均要求开物数智在48小时内撤除相关内容并公开道歉,否则将采取法律行动。开源项目商业化的合规挑战这一事件引发了业内对开源项目商业化合规问题的广泛关注。作为技术媒体,我们有必要探讨开源项目在商业化过程中可能面临的合规挑战:1. 商标权保护与使用边界开源软件的代码可能是自由的,但其商标权却受到严格保护。如本次事件中,KaiwuDB商标由上海沄熹科技有限公司持有,未经授权使用构成侵权。企业在使用开源项目名称、标识时,需明确区分开源许可与商标使用权的界限。2. 技术架构与知识产权边界涛思数据指控开物数智混淆TDengine与KaiwuDB的技术边界,这反映了在技术架构描述中需???明确各组件的归属和关系。特别是在"基于"某开源项目进行二次开发时,不应模糊原创与衍生的界限,更不能暗示不存在的技术从属关系。3. 开源协议的正确理解与遵守不同的开源协议对商业化有不同的限制条件。例如,GPL协议要求衍生作品必须以相同协议开源;而Apache、MIT等协议则相对宽松。企业在商业化开源项目时,必须充分理解并严格遵守相关协议条款。4. 避免不正当竞争行为在开源生态中,利用他人商誉、混淆产品来源、虚假宣传等行为不仅违反商业道德,也可能触犯法律。开源商业化的合规建议针对上述挑战,我们提出以下合规建议:明确授权范围:在商业化过程中,应明确区分开源代码使用权与商标使用权,必要时寻求正式授权。准确描述技术关系:在产品宣传、技术文档中,应准确描述与其他开源项目的技术关系,避免误导性表述。尊重知识产权:即使是开源项目,其架构图、文档等仍受著作权保护,未经许可不得随意使用或修改。建立合规审查机制:企业应建立开源合规审查机制,确保产品开发、营销过程中不侵犯他人知识产权。积极参与社区共建:通过正当途径参与开源社区建设,以合作而非侵权方式实现商业价值。结语开源精神的核心是共享与协作,而非无序与侵权。在开源项目商业化的浪潮中,企业既要把握创新机遇,也要恪守法律底线。只有在尊重知识产权、遵循商业道德的前提下,中国的开源生态才能健康发展,我们的基础软件产业才能赢得国际尊重。本次涛思数据与浪潮KaiwuDB的联合发声,不仅是对单一侵权事件的回应,更是对整个行业的警示。我们期待各方能够通过此事件反思,共同维护一个公平、有序、创新的开源商业环境。
about 1 month ago
在当今数据驱动的世界中,高性能、低延迟的数据存储和检索系统变得越来越重要。Valkey 作为一个基于 Redis 的键值存储解决方案,以其卓越的性能和灵活性而闻名。同时,亚马逊云科技的 Graviton 处理器为云计算带来了新的可能性,提供了更高的性价比。本文将探讨如何利用 Graviton 实例来进一步提升自建 Valkey 的性价比,通过一系列测试和分析,为读者提供实用的洞察和建议。Valkey 与 Graviton...
about 1 month ago
在分布式系统中,高并发既是业务增长的标志,也是系统崩溃的导火索。今天我们聚焦Go-zero这个框架,手把手带你掌握限流、熔断和降级:✅ 限流:用令牌桶算法精准控制流量,防止单点过载✅ 熔断:构建“断路器”机制,避免故障级联扩散✅ 降级:优雅放弃非核心功能,守住业务生命线本文不仅附有完整代码示例,还拆解了高频面试问题及回答技巧,助你从“会写代码”进阶为“懂系统设计”的技术人。限流、熔断示例:限流示例Go-zero中可以使用ratelimiter中间件来实现API流量控制。示例代码如下:首先创建一个limiter实例:limiter := rate.NewLimiter(rate.Limit(qps), qps*3)这里rate.Limit(qps)用来设置每秒允许的请求量,qps*3用来设置瞬间最大并发数。然后在请求处理中使用该limiter:if!limiter.Allow() { return http.StatusTooManyRequests, nil }通过limiter.Allow()判断当前请求是否允许访问,如果超过了请求数,则返回http.StatusTooManyRequests错误。熔断示例Go-zero中没有像Hystrix那样有非常成熟的、开箱即用的熔断组件,但可以参考一些开源的熔断器实现来进行自定义熔断逻辑。以下是一个简单的模拟熔断器逻辑示例:package...
about 2 months ago
背景当我为每个Vue项目使用ui组件库的时候,都会使用按需导入的方式来使用ui组件库。但是每次按需导入,不可避免的就需要做以下三步。我们以element plus ui组件库为例。1. 安装依赖第一步,当然是需要安装依赖。命令如下:pnpm add unplugin-vue-components unplugin-auto-import // npm和yarn同理2. 添加vite配置第二步,就是往vite的配置里面添加配置,如下所示:// vite.config.ts import...
about 2 months ago
ew-auto-import-tool (自动化按需导入工具)简介自动化按需导入工具是一个命令行工具,用于自动配置 Vue 项目中组件库的按需导入。它可以帮助你快速设置 Element Plus、Ant Design Vue 等组件库的按需导入,无需手动修改配置文件。功能特点依赖管理:自动检测并安装所需依赖Vite 配置修改:自动添加必要的 import 语句和插件配置TypeScript...