FreeBSD下不能直接安装g4f,因为Curl_cffi这个库装不上。0.5.0.3这个版本不需要这个库,所以可以安装。

那么就没有办法安装新版本了吗? 有的,就是在linux仿真环境下。

Linux仿真环境安装g4f

最简单的方法是使用chroot进入linux仿真环境,然后在里面安装新版本的g4f

# 进入linux仿真环境
sudo chroot /compact/ubuntu22 /bin/bash# 启动python环境
source ub22py312/bin/activate 
pip install pip -U
pip install g4f[all] -U
g4f gui

这个方法下成功安装了最新版本的0.5.7.3版本

但是这个方法虽然简单,使用起来却有些繁琐,需要sudo权限

在FreeBSD下安装Conda,然后在Conda环境下安装G4F

更好一点的方法,是直接在FreeBSD下安装Conda,然后在Conda环境下安装G4F

在FreeBSD下安装Conda参考:在FreeBSD14.2下安装MiniConda python3.12 ,以便安装运行Auto-Coder_freebsd conda-CSDN博客

但是现在碰到问题,就是markitdown这个库的新版本无法安装上,进而导致g4f的gui无法启动

解决依赖库markitdown

使用--no-deps

pip install markitdown==0.1.2 --no--deps

解决magika库 

这时候报:No module named 'magika'

pip install magika --no--deps

这时候报: No module named 'onnxruntime'

解决安装onnxruntime库 

发现无法用pip安装onnxruntime

FreeBSD系统里onnxruntime安装包,但是因为没有装在python下,无法用。

FreeBSD系统下还有py311的onnxruntime包,但是因为现在是python3.12环境,也无法用。

用conda命令安装onnxruntime库

conda install onnxruntime

如果速度慢,可以加镜像

创建.condarc文件

conda config --set show_channel_urls yes

在.condarc文件中加入清华镜像

channels:- defaults
show_channel_urls: true
default_channels:- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudpytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

 安装完成,测试g4f

 g4f gui

启动成功!

浏览器浏览的8080端口,网站正常。

结论

关于在FreeBSD系统下使用f4f,如果用完全的仿真,那么很容易安装g4f

如果是conda仿真,那么onnxruntime库可能无法用pip安装,需要使用conda来看着。

调试

用conda安装markitdown的时候,报错RemoveError: 'pluggy'

Verifying transaction: failed                                                         
                                                                                      
RemoveError: 'pluggy' is a dependency of conda and cannot be removed from             
conda's operating environment.                                                        
                                  

pip uninstall pluggy

最终解决见后面隔一个问题。 

删除pluggy后报错conda info could not be constructed.(不应该删除,这步可以跳过)

conda info could not be constructed.
KeyError('active_prefix_name')

An unexpected error has occurred. Conda has prepared the above report.
If you suspect this error is being caused by a malfunctioning plugin,
consider using the --no-plugins option to turn off plugins.
执行

conda --no-plugins install markitdown[all]

不行。不得已,又把pluggy安装上

pip install pluggy

conda装什么都报错RemoveError: 'pluggy'

尝试强制重装核心

conda update conda --force-reinstall  # 强制重装Conda核心组件‌:ml-citation{ref="1,3" data="citationList"}

不行

切换清华源解析

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/‌:ml-citation{ref="6" data="citationList"}
conda update --all --channel defaults  # 优先使用默认通道‌:ml-citation{ref="5,6" data="citationList"}

哇塞,终于搞定了!

问题的原因,有可能是切换清华源,但没有切换干净.....

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

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

相关文章

Node.js 中基于请求 ID 实现简单队列(即时阻止策略/排队等待策略)

在Node.js 中基于请求 ID 实现简单队列 下面示例演示两种策略,以同一个请求 ID 为单位: 即时阻止策略:如果已有相同 ID 的请求在处理,直接报错并返回。 排队等待策略:后续相同 ID 的请求不报错,而是挂起&…

详解如何解决Mysql主从复制延迟

解决 MySQL 主从复制延迟需要从架构设计、参数调优、硬件优化等多维度综合处理。一、根本原因分析主从延迟的本质是&#xff1a;从库的 SQL 线程重放速度 < 主库的写入速度 常见瓶颈点&#xff1a;单线程回放&#xff08;MySQL 5.6 前&#xff09;从库硬件配置低&…

Spring之事务使用指南

Spring之事务使用指南一、事务的基础概念1.1 什么是事务&#xff1f;1.2 事务的ACID特性1.3 Spring事务的核心优势二、Spring事务的核心配置三、事务传播行为&#xff08;Propagation&#xff09;3.1 常用传播行为详解3.1.1 REQUIRED&#xff08;默认值&#xff09;3.1.2 SUPPO…

基于FPGA的多级流水线加法器verilog实现,包含testbench测试文件

目录 1.课题概述 2.系统仿真结果 3.核心程序 4.系统原理简介 5.参考文献 6.完整工程文件 1.课题概述 流水线&#xff08;Pipeline&#xff09;技术源于工业生产中的装配线理念&#xff0c;在数字电路中&#xff0c;它将一个复杂运算任务分解为若干个子任务&#xff0c;每…

5.1.4习题精讲

一、单项选择题 01. 下列部件不属于控制器的是&#xff08; C &#xff09;。 题目原文 下列部件不属于控制器的是&#xff08; &#xff09;。 A. 指令寄存器 B. 程序计数器 C. 程序状态字寄存器 D. 时序电路 正确答案&#xff1a;C 题目解析 考点分析&#xff1a; 本题考察CP…

华为云Flexus+DeepSeek征文|低代码 × 强推理:华为云 Flexus 搭建可部署的 AI Agent 实践方案【搭建宠物养护小知识AI助手】

文章目录华为云FlexusDeepSeek征文&#xff5c;低代码 强推理&#xff1a;华为云 Flexus 搭建可部署的 AI Agent 实践方案【搭建宠物养护小知识AI助手】&#x1f680; 引言一、核心技术概览1. 华为云 Flexus X2. DeepSeek-R1 模型3. Dify 平台二、总体架构设计三、环境准备与资…

基于智慧经营系统的学校住宿登记报表分析与应用探究-毕业论文—仙盟创梦IDE

摘要本文聚焦学校住宿场景&#xff0c;以 “未来之窗智慧经营&#xff08;学校住宿&#xff09;” 系统生成的日报表、昨日报表、本月报表为研究对象&#xff0c;深入剖析报表数据结构、功能价值及在住宿管理中的应用。通过解读水费、电费、押金、房费、总计、订单等数据维度&a…

arping(ARP协议网络测试工具)

1. 项目介绍&#xff1a;arping 是一个用于在局域网&#xff08;LAN&#xff09;中查找特定 IP 地址是否被占用的实用工具。与传统的 ping 命令不同&#xff0c;arping 使用 ARP 协议来发送和接收数据包&#xff0c;从而能够检测到那些阻止 ICMP 请求的主机。arping 可以帮助网…

【UE5医学影像可视化】读取dicom数据生成2D纹理并显示

文章目录1.实现目标2.实现过程2.1 数据准备2.2 创建项目2.3 dcmtk库集成2.4 流程&原理2.5 材质2.6 应用实现3.参考资料1.实现目标 本文在UE5中读取本地的dicom文件&#xff0c;解析像素值、窗宽窗位等信息&#xff0c;生成2D纹理&#xff0c;在UE场景中实现简单的2D医学影像…

lua(xlua)基础知识点记录一

1. 关于 (…) 操作符 编译阶段优化&#xff1a;Lua 编译器会对常量字符串进行优化处理&#xff0c;将连续的字符串拼接操作 (…) 合并为单个字符串。这种优化仅适用于编译期确定的常量字符串&#xff0c;不适用于运行时生成的动态字符串。 示例&#xff1a;local str "He…

【Python数据采集】Python爬取小红书搜索关键词下面的所有笔记的内容、点赞数量、评论数量等数据,绘制词云图、词频分析、数据分析

Python爬取小红书搜索关键词下面的所有笔记的内容、点赞数量、评论数量等数据&#xff0c;绘制词云图、词频分析、数据分析 使用 Python 编写一个简单的爬虫程序来从小红书抓取与指定关键词相关的笔记数据&#xff0c;并对这些数据进行基本的数据分析&#xff0c;包括词云图和…

最大子数组和问题-详解Kadane算法

最大子数组和问题-详解Kadane算法一、问题定义与暴力解法1.1 问题描述1.2 暴力解法的低效性二、Kadane算法的核心原理2.1 动态规划思想的应用2.2 优化空间复杂度三、Kadane算法的Java实现3.1 基础版本&#xff08;处理所有情况&#xff09;3.2 算法正确性验证四、Kadane算法的变…

Mongoose网络库深度解析:从单线程到多线程的架构演进

0. 引言&#xff1a;C/C网络编程的困境与突破 在C/C开发领域&#xff0c;网络编程一直是一个令人头疼的问题。与Python的requests库或Go的net/http包不同&#xff0c;C/C缺乏统一的包管理体系和标准化的网络API。开发者往往需要面对gcc/msvc版本差异、平台兼容性问题、以及各种…

Jfinal+SQLite处理 sqlite数据库执行FIND_IN_SET报错

方法一原代码sql " and FIND_IN_SET(s.M_ID," ids ")"; 修改为 sql " where s.M_ID"getInSql(ids);public static String getInSql(String ids) {String[] idArray ids.split(",");StringBuilder sql new StringBuilder(" I…

day24——Java高级技术深度解析:单元测试、反射、注解与动态代理

文章目录一、单元测试&#xff1a;JUnit框架精要1.1 单元测试核心概念1.2 JUnit快速入门实战基础步骤&#xff1a;断言机制验证结果1.3 JUnit核心注解解析二、反射机制&#xff1a;框架设计的基石2.1 反射核心概念2.2 获取Class对象的三种方式2.3 反射操作类成分获取并执行构造…

网页的性能优化,以及具体的应用场景

下面是每个性能优化技术的具体应用场景示例&#xff0c;结合代码说明如何在实际项目中使用这些优化方法&#xff1a; 1. 批量DOM操作与DocumentFragment 应用场景&#xff1a;动态渲染大量列表项&#xff08;如评论区、商品列表&#xff09; 问题&#xff1a;逐个添加DOM元素会…

Fiddler 中文版 API 调试与性能优化实践 官方中文网全程支持

在现代开发中&#xff0c;性能问题往往是产品上线后最容易被忽视的一环&#xff0c;尤其是API接口性能。一旦接口响应时间过长或在高并发场景下出现性能瓶颈&#xff0c;可能直接影响用户体验和系统稳定性。对于开发者来说&#xff0c;如何精确地找到瓶颈所在&#xff0c;如何模…

嵌入式硬件篇---机械臂运动学解算(3自由度)

实际 3 自由度机械臂的解算是机器人控制的核心&#xff0c;涉及运动学正解&#xff08;关节角度→末端位姿&#xff09;和逆解&#xff08;目标位姿→关节角度&#xff09;。以下从结构建模、解算方法、代码实现和应用场景四个维度详细展开&#xff0c;结合工业级机械臂的典型场…

在摄像机视图中想像在普通 3D 视口里那样随意移动

有两条最常用的方法&#xff1a;1. 「锁定相机到视图」(Lock Camera to View)步骤进入相机视图&#xff1a;按 Numpad 0&#xff08;若无数字键盘&#xff0c;可在 Edit → Preferences → Input 勾选 Emulate Numpad 后用主键盘 0&#xff09;。右侧呼出 N 面板&#xff0c;切…

An End-to-End Attention-Based Approach for Learning on Graphs NC 2025

NC 2025 | 一种基于端到端注意力机制的图学习方法 Nature Communications IF=15.7 综合性期刊 1区 参考:https://mp.weixin.qq.com/s/cZ-d8Sf8wtQ9wfcGOFimCg 今天介绍一篇发表在 Nature Communications 的图学习论文《An end-to-end attention-based approach for learnin…