大数跨境
0
0

AGI|Auto Hyperlink上线:鼠标点到哪,知识秒懂!

AGI|Auto Hyperlink上线:鼠标点到哪,知识秒懂! AI实践工程院
2025-07-08
0
导读:告别手动搜索!给电脑装上「一点就懂」的超能力!


神州数码云基地

AGI专栏

Auto Hyperlink

在日常浏览网页时,你或许会见到一些智能超链接,点击即可自动识别关键词并跳转或发起搜索,大幅提升使用效率。


受此启发,笔者开发了一个文字附加超链功能应用,实现一键直达相关内容。本文将带你一起了解它的实现原理与应用方法。



 作者 

周立贤 AI交付工程师

先当群众的小学生



Part1

案情介绍


本次分享介绍原创项目,它的功能是为页面中的文本添加超链接,以显示简介和快捷搜索。分享介绍了它的实现,并且记录改进建议。


这是项目 github 地址,请大家给我点亮 star⭐:
https://github.com/ANopony/auto-keyword-spot


以下是项目相关演示视频:




Part2

作案动机


在哔哩哔哩的评论区,点击偶尔出现的蓝色字体可以自己跳转搜索;在知乎的回答中,点击蓝色超链接也可以跳转搜索;在飞书中,点击带有虚线下划线的字体可以查看这个词的解释,并且可以点击搜索,点击时间有关的词还可以快捷创建日程。



哔哩哔哩:点击评论区的高亮字体跳转搜索


飞书:点击创建日程


飞书:点击查看解释


如果能在 AI 端侧应用中、在技术文档中,为部分生僻词汇/专业词汇添加一个超链接,点击显示一个简介和一个跳转百科的链接,那么会很方便我们熟悉一个未知的领域。



Part3

作案结果


1. 当前在一个基于 electron 的 AI 对话端侧应用上引用了该项目,展现出的效果如下。


引用前 

引用后


点击超链接显示简介


点击“更多信息”跳转维基百科词条


2. 在一个基于 Node 的 Web 应用中引用该项目,展现出的效果如下


读取文件内容的 Web 应用

读取文本后


引用后

点击跳转维基百科



Part4

作案过程


1. Auto Hyperlink 工具的开发思路


把任务拆分成:


  - 获取页面变化的文本内容

  - 请求大模型为文本内容添加超链接

  - 覆盖页面的文本内容



2. 应用引入工具


// 在 electron 引入
const AutoHyperlink = require("auto-keyword-spot");

document.addEventListener('DOMContentLoaded', () => {
    const autoLinker = new AutoHyperlink({
        definitionApiUrl'http://localhost:506/api/extract_keywords'// Your backend API URL
        debounceDelay: 700// Debounce delay in milliseconds
    });

    // Start observing changes in the document body or a specific container
    autoLinker.observe(document.getElementById('chat-container') || document.body);

    // For cleanup (optional, but good practice if app has a shutdown hook)
    window.addEventListener('beforeunload', () => {
        autoLinker.destroy();
    });
});



// 在 Node Web 应用引入
// ./public/app.js
const AutoHyperlink = require('auto-hyperlink');

document.addEventListener('DOMContentLoaded', () => { // 确保 DOM 完全加载后再执行
    const filePathInput = document.getElementById('filePathInput'); // 获取文件路径输入框
    const openFileBtn = document.getElementById('openFileBtn'); // 获取“打开”按钮
    const contentDisplay = document.getElementById('contentDisplay'); // 获取内容显示区域
    const loadingIndicator = document.getElementById('loadingIndicator'); // 获取加载指示器
    const errorDisplay = document.getElementById('errorDisplay'); // 获取错误显示区域
    /// ......existing code

    // 实例化 AutoHyperlink 工具
    const autoLinker = new AutoHyperlink({
        debounceDelay700// 防抖延迟,根据实际体验调整
    });

    // 观察文件内容显示区域
    // AutoHyperlink 会监听 `contentDisplay` 内部的 DOM 变化,并自动处理文本
    autoLinker.observe(contentDisplay);
    
    // ......existing code



Part5

作案未遂的事


- 关键词有多个时,只标注第一个

- 在用户的机器上启动 server

- 优化 system prompt

- 为不同知识领域的用户提供个性化的关键词检测

- 结合知识库搜索关键词

- 大模型只检测关键词,简介和链接编码生成

- 用更专业的模型

- 集成MCP


欢迎大家去体验,若有任何疑问或建议,可以在评论区共同交流





Hello~

这里是神州数码云基地
编程大法,技术前沿,尽在其中
超多原创技术干货持续输出ing~


想要第一时间获取
超硬技术干货
快快点击关注+设为星标



- END -


往期精选




Browser Use —— AI代理浏览器




2025人工智能趋势报告-Bond




从 RAG 到 Advanced RAG


了解云基地,就现在!

【声明】内容源于网络
0
0
AI实践工程院
我们致力于用数字技术重构企业价值,助力企业实现数字化转型升级。
内容 434
粉丝 0
AI实践工程院 我们致力于用数字技术重构企业价值,助力企业实现数字化转型升级。
总阅读278
粉丝0
内容434