【GitHub每日速递 250922】开源 AI 搜索引擎 Perplexica:本地大模型 + 多模式搜索,免费又强大!

news/2025/9/22 7:46:35/文章来源:https://www.cnblogs.com/freedom-w/p/19103694

image

原文: https://mp.weixin.qq.com/s/F7KwZlUd5OQg5CbAEbZGug

MarkItDown:多格式文件转Markdown神器,助力LLM文本分析!

markitdown 是一个将文件和办公文档转换为 Markdown 的工具。简单讲,它能帮你把 Word、Excel 等文档一键转成简洁的 Markdown 格式。适用人群:需要频繁处理文档转换的开发者、技术写作者和内容创作者。

项目地址:https://github.com/microsoft/markitdown

主要语言:Python

stars: 77.16k

仓库核心功能

MarkItDown 是一个轻量级的 Python 工具,主要用于将各种文件转换为 Markdown 格式,以用于大语言模型(LLMs)和相关文本分析管道。它支持多种文件格式的转换,包括 PDF、PowerPoint、Word、Excel、图片、音频、HTML、基于文本的格式(如 CSV、JSON、XML)、ZIP 文件、Youtube 链接、EPubs 等。

优势

  • 保留文档结构:与 textract 相比,MarkItDown 更注重将重要的文档结构和内容保留为 Markdown 格式,如标题、列表、表格、链接等。
  • 适合文本分析:输出的 Markdown 内容虽然也具有一定的可读性,但主要是为文本分析工具设计的。
  • Markdown 的优势:Markdown 接近纯文本,标记和格式最少,主流的大语言模型(如 OpenAI 的 GPT - 4o)原生支持 Markdown,并且在训练中接触过大量 Markdown 格式的文本,理解能力强,同时 Markdown 约定在处理时具有较高的令牌效率。

可能的应用场景

  • 文本分析:将各种文件转换为 Markdown 后,可以方便地输入到文本分析工具中进行处理,如情感分析、主题建模等。
  • 大语言模型交互:为大语言模型提供结构化的输入,以便更好地理解文档内容。

关键信息

前提条件

  • 需要 Python 3.10 或更高版本。
  • 建议使用虚拟环境来避免依赖冲突,并给出了标准 Python 安装、uv 和 Anaconda 创建虚拟环境的方法。

安装

  • 可以使用 pip install 'markitdown[all]' 进行安装。
  • 也可以从源代码安装,先克隆仓库,再使用 pip install -e 'packages/markitdown[all]' 进行安装。

使用方法

  • 命令行:支持直接指定输入文件并输出到 Markdown 文件,也可以使用 o 指定输出文件,还支持管道输入。
  • 可选依赖:可以根据需要单独安装特定文件格式的依赖,如 pip install 'markitdown[pdf, docx, pptx]'
  • 插件:支持第三方插件,默认禁用,提供了列出和启用插件的命令,可在 GitHub 搜索 #markitdown - plugin 查找可用插件,开发插件可参考 packages/markitdown - sample - plugin
  • Azure 文档智能服务:可使用 Microsoft 文档智能服务进行转换,需要提供端点信息。
  • Python API:提供了基本的 Python 使用示例,包括是否启用插件、使用文档智能服务和使用大语言模型进行图像描述的示例。
  • Docker:提供了 Docker 构建和运行的命令。

开源AI搜索引擎Perplexica来袭!支持本地大模型,多模式搜索超强大

Perplexica 是一个 AI 驱动的开源搜索引擎。简单讲,它能像Perplexity AI一样通过人工智能帮你快速找到并总结网络信息,但代码完全开放免费。适用人群:需要高效获取准确信息的研究者、开发者及普通网民。

项目地址:https://github.com/ItzCrazyKns/Perplexica

主要语言:TypeScript

stars: 25.21k

仓库整体介绍

Perplexica 是一个开源的人工智能搜索引擎,受 Perplexity AI 启发而开发。它不仅能进行网页搜索,还能理解用户问题,使用先进的机器学习算法(如相似性搜索和嵌入技术)优化搜索结果,并清晰地给出答案且附带信息来源。该项目借助 SearxNG 保证信息的时效性和隐私性,让用户获取最新信息。

核心功能

  • 本地大语言模型支持:可使用 Qwen、DeepSeek、Llama 和 Mistral 等本地大语言模型。
  • 两种主要模式
    • Copilot 模式:仍在开发中,通过生成不同查询来找到更相关的互联网资源,会访问搜索结果的页面直接查找与用户查询相关的内容。
    • 正常模式:处理用户查询并进行网页搜索。
  • 多种聚焦模式
    • 全模式:搜索整个网络以找到最佳结果。
    • 写作助手模式:对无需网络搜索的写作任务有帮助。
    • 学术搜索模式:查找文章和论文,适合学术研究。
    • YouTube 搜索模式:根据搜索查询查找 YouTube 视频。
    • Wolfram Alpha 搜索模式:使用 Wolfram Alpha 回答需要计算或数据分析的查询。
    • Reddit 搜索模式:在 Reddit 上搜索与查询相关的讨论和观点。
  • 实时信息获取:利用 SearxNG 这个元搜索引擎获取结果并重新排序,确保用户获得最新信息,无需每日更新数据。
  • API 支持:开发者可将其集成到现有应用程序中。

代码架构特点

项目使用 Next.js 运行并处理所有 API 请求,在同一网络中可直接使用,通过端口转发也能保持可访问性。

安装方式

  • 使用 Docker(推荐)
    • 确保 Docker 已安装并运行。
    • 克隆仓库:git clone https://github.com/ItzCrazyKns/Perplexica.git
    • 进入项目目录,将 sample.config.toml 重命名为 config.toml,按需填写相关字段(如不同模型的 API 密钥等)。
    • 在包含 docker-compose.yaml 文件的目录下执行 docker compose up -d
    • 等待几分钟,在浏览器中访问 http://localhost:3000 即可使用。
  • 非 Docker 安装
    • 安装 SearXNG 并允许 JSON 格式。
    • 克隆仓库,重命名 sample.config.tomlconfig.toml 并填写所需字段。
    • 运行 npm i 安装依赖。
    • 执行 npm run build
    • 运行 npm run start 启动应用。

常见问题解决

  • 本地 OpenAI - API 兼容服务器问题:确保服务器在 0.0.0.0 上运行,指定正确的模型名称和 API 密钥。
  • Ollama 连接错误:检查 API URL,根据不同操作系统更新 URL,Linux 用户需将 Ollama 暴露到网络并确保端口未被防火墙阻止。
  • Lemonade 连接错误:检查 API URL,根据不同操作系统更新 URL,确保 Lemonade 服务器运行,配置为接受所有接口连接且端口未被防火墙阻止。

使用方法

  • 作为搜索引擎使用:在浏览器设置的“搜索引擎”部分添加新的站点搜索,URL 为 http://localhost:3000/?q=%s,可直接从浏览器搜索栏使用。
  • 使用 API:开发者可参考 API 文档将其集成到自己的应用中。

一键部署

提供了在 Sealos、RepoCloud、ClawCloud 和 Hostinger 等平台的一键部署方式。

即将推出的功能

  • 目前已完成添加设置页面、支持本地大语言模型、历史保存功能、引入多种聚焦模式、添加 API 支持和发现功能。
  • 待完成的功能为完善 Copilot 模式。

OpenAI Codex CLI来袭!本地运行编码神器,多种安装使用方式揭秘

一个在终端中运行的轻量级编程代理工具。简单讲,它能帮你自动生成代码、理解代码逻辑并完成编程任务,就像一个会写代码的助手。适用人群:开发者、程序员及终端重度用户。

项目地址:https://github.com/openai/codex

主要语言:Rust

stars: 42.0k

OpenAI Codex CLI 是 OpenAI 推出的一款本地运行的编码代理工具,以下是它的详细介绍:

  • 安装与运行
    • 可以使用包管理器全局安装,如使用 npm 安装,命令为 npm install -g @openai/codex;若使用 Homebrew,命令为 brew install codex。安装完成后,运行 codex 即可启动。
    • 也能前往 最新 GitHub Release 页面,根据自己的平台下载合适的二进制文件。不同系统有对应的文件,如 macOS 有适用于 Apple Silicon/arm64 的 codex-aarch64-apple-darwin.tar.gz 和适用于 x86_64 的 codex-x86_64-apple-darwin.tar.gz;Linux 有适用于 x86_64 的 codex-x86_64-unknown-linux-musl.tar.gz 和适用于 arm64 的 codex-aarch64-unknown-linux-musl.tar.gz。解压后建议重命名为 codex
  • 与 ChatGPT 计划结合使用
    • 运行 codex 后选择“Sign in with ChatGPT”,推荐使用 ChatGPT 的 Plus、Pro、Team、Edu 或 Enterprise 计划账号登录使用。若想了解 ChatGPT 计划包含的内容,可查看 相关文章。
    • 也能使用 API 密钥,但需要 额外设置。若之前使用 API 密钥进行按使用量计费,可参考 迁移步骤。若登录遇到问题,可在 此问题 下留言。
  • 模型上下文协议(MCP):支持 MCP 服务器,在 ~/.codex/config.toml 中添加 mcp_servers 部分即可启用。
  • 配置:支持丰富的配置选项,偏好设置存储在 ~/.codex/config.toml 中,完整配置选项可查看 Configuration。
  • 文档与常见问题解答:涵盖了从入门到高级使用的各个方面,包括入门指南、沙盒与审批、认证、高级功能、零数据保留、贡献、安装与构建等内容。

优势

  • 本地运行:可在本地计算机上运行,一定程度上保障数据安全和隐私。
  • 多方式使用:既可以结合 ChatGPT 计划使用,也能使用 API 密钥。
  • 丰富配置:支持多种配置选项,可根据需求灵活调整。

应用场景

  • 开发人员在命令行中快速获取代码生成、代码解释等帮助。
  • 用于持续集成(CI)流程,结合非交互模式自动完成代码相关任务。
  • 辅助教学,帮助学生学习编程时快速获得代码示例和解释。

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

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

相关文章

coze工作流实战——三分钟读一本名著

导航前言 作品展示 工作流展示 操作步骤 结语 参考前言2025年被行业认为是智能体(Agent)元年。过去几年,我们见证了AI 大模型的飞速发展,从只会简单回答问题,简单生成图文,到可以写代码,生成复杂视频,甚至可以…

大厂是怎么识别“高潜员工”的?

微信视频号:sph0RgSyDYV47z6快手号:4874645212抖音号:dy0so323fq2w小红书号:95619019828B站1:UID:3546863642871878B站2:UID: 3546955410049087大部分人都想当“高潜员工”,包括我,因为高潜员工意味着更好的机…

读人形机器人19后劳动经济

读人形机器人19后劳动经济1. 后劳动经济 1.1. 后劳动经济不仅仅是一个理论上的概念,它是AI、机器人技术和自动化技术融合的潜在现实 1.2. 核心设想是一个由机器人完成大部分工作的社会,使得人类劳动在经济生产中变得…

2025年最佳笔记本扩展坞评测:一站式提升工作站效率

本文深度评测2025年十大笔记本扩展坞,涵盖Thunderbolt 5技术、多显示器支持、数据传输速度对比及功率分配方案,帮助用户根据实际需求选择最适合的桌面扩展解决方案。10款最佳笔记本扩展坞(2025年):实测与评测 笔记…

论文查重项目

这个作业的GitHub地址 https://github.com/kakadomi/kakadomi这个作业属于哪个课程 https://edu.cnblogs.com/campus/gdgy/Class34Grade23ComputerScience这个作业要求在哪里 https://edu.cnblogs.com/campus/gdgy/Cla…

我的第一个程序Hello,World!成功运行!

遇到了很多很多问题*JDK vs JRE,傻傻分不清,JDK才包含编译器javacOracle官网下载困难,转向下载Zulu OpenJDK(www.azul.com)配置环境变量后命令依然无效,在命令行输入javac -version不是内部或外部命令未输入完整路径…

Day05-1-C:\Users\Lenovo\Desktop\note\code\JavaSE\Basic\src\com\David\scanner-Demo01~05(简易计算器)

package com.David.scanner; import java.util.Scanner; public class Demo01 { public static void main(String[] args) { //创建一个扫描对象,用于接受键盘数据‘ Scanner scanner = new Scanner(System.in); Syst…

Day05-C:\Users\Lenovo\Desktop\note\code\JavaSE\Basic\src\com\David\struct-ifDemo01~03+shunxuDemo

Scanner Java.util.scanner Scanner s = new Scanner(System.in); Next一定要读取到有效字符才结束 对输入有效字符前的空白,next()方法会自动将其去掉 只有输入有效字符后才将其后面输入的空白作为分隔符或结束符 ne…

JS历理 优化login.js脚本2

const infoList = [];// 收集链接相关信息 const currentUrl = window.location.href || "未知链接"; const originUrl = window.location.origin || "未知源地址"; const pathname = window.loca…

Codeforces Round 1052 (Div. 2)

A. Equal Occurrences 题意:求\(a\)的一个最长子序列,使得每个数出现的次数相同。 记录每个数出现的次数,排序后从小到大枚举出现次数,那么比它多的数都可以选。点击查看代码 #include <bits/stdc++.h>using…

PatternMatcher-Pytorch

import os import torch import torch.nn as nn import torch._inductor.pattern_matcher as pm from torch._higher_order_ops.auto_functionalize import auto_functionalized from torch._inductor.compile_fx impo…

uboot启动流程

1、整个流程BootROM(MaskROM) → TPL(可选) → VPL(可选) → SPL → U-Boot proper* (main U-Boot)(*表示必须要的阶段) BootROM(1、用户不可写 2、10KB量级 3、执行速度快, 和SRAM接近) TPL(Tertiary Program…

内存泄漏

内存泄漏(Memory Leak)是指程序中已动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。 内存泄漏缺陷具有隐蔽性、积累性的特征,比其他内存非法…

Context Engineering

很多人容易小看“prompt engineering”,认为这样的工作只是“调用大模型”而已。事实上随着时代的发展,“调用大模型”完成任务已经悄然成为了软件工程的新范式。相比之下, 传统软件工程只能完成由人事先编写的精确…

ios在wifi模式下设置http代理

1.使用概述 此模式在使用wifi的情况下进行使用,不需要安装任何app 2.打开手机的wifi设置a.打开wifi b.打开当前wifi(点击i) 滑倒最下面,[配置代理],设置为手动,点击进去修改为手动然后设置服务器,端口,用户,密码等这五…

面试官问:请画出 MySQL 架构图!这种变态问题都能问的出来

面试官问:请画出 MySQL 架构图!这种变态问题都能问的出来MySQL架构详解:从面试题到核心组件解析 MySQL架构主要分为四层:1)连接层负责连接管理;2)服务层处理SQL解析优化;3)存储引擎层(InnoDB/MyISAM等)实现数据存…

基于协方差交叉(CI)的多传感器融合算法matlab仿真,对比单传感器和SCC融合

1.程序功能描述 基于协方差交叉(CI)的多传感器融合算法matlab仿真,对比单传感器和SCC融合。对比速度估计误差RMSE指标,位置估计误差RMSE指标,等概率密度椭圆。 2.测试软件版本以及运行结果展示MATLAB2022A版本运…

github/网盘/公众号信息收集

(1)github信息收集 基于域名,邮箱,公司名称,备案号,个人名称,电话号码,qq号码 去百度上搜索资产,获取网站,然后在gihub上进行搜索 xxx.edu passwd 或者使用工具 http://github.com/obheda12/GitDorker/tree/…

AtCoder Regular Contest 206 (Div. 2) 部分题解

A B C D 题解AtCoder Regular Contest 206 (Div. 2) 部分题解 A - Range Replace 我们发现,若 \(a_i=a_{i+1}\) 则将操作左端点放在 \(i\) 和 \(i+1\) 是等价的,为了不重复,我们强制所有操作左端点都要放在 \(i\) 使…

Grafana 和 Openssh 高危漏洞修复

本次漏洞扫描,扫描到的高危漏洞涉及Grafana和Openssh,其中Grafana发现漏洞有(CVE-2023-3128、CVE-2022-23498、CVE-2023-4822、CVE-2024-1442),Openssh的漏洞有(CVE-2023-38408、CVE-2020-15778、CVE-2020-12062…