当前位置: 首页 > news >正文

终极方案!lightRag/graphRag离线使用tiktoken持续报错SSLError,不改源码,彻底解决!

在lightRag和GraphRag中,build rag对象时,在离线环境下,tiktoken 一直报错,需要获取

https://openaipublic.blob.core.windows.net/encodings/o200k_base.tiktoken 这个资源,

看了很多帖子,要么存在误导,要么就是改源码,非常不友好!

我的解决思路如下:

首先

```非联网状态下,运行下面代码报错:

import os

import tiktoken

encoding = tiktoken.get_encoding("o200k_base")

```

报错:SSLError: HTTPSConnectionPool(host='openaipublic.blob.core.windows.net', port=443): Max retries exceeded with url: /encodings/o200k_base.tiktoken (Caused by SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:992)'))) 

需要获取的资源为 https://openaipublic.blob.core.windows.net/encodings/o200k_base.tiktoken  

那么浏览器打开,直接手动获取这个文件('o200k_base.tiktoken')。

然后,重要!!重要!!!重要!!! 

```

import hashlib

blobpath = "https://openaipublic.blob.core.windows.net/encodings/o200k_base.tiktoken"

cache_key = hashlib.sha1(blobpath.encode()).hexdigest()

print(cache_key)

# 输出 fb374d419588a4632f3f557e76b4b70aebbca790

``` 

然后配置一个本地tiktoken的缓存文件夹 如: /home/user/tiktoken

将手动获取的文件o200k_base.tiktoken复制到 /home/user/tiktoken 目录下,在该目录下,将o200k_base.tiktoken直接重命名为fb374d419588a4632f3f557e76b4b70aebbca790 

然后设置环境变量TIKTOKEN_CACHE_DIR:

os.environ["TIKTOKEN_CACHE_DIR"] = '/home/user/tiktoken'

执行以下代码不再出错

```

import os

import tiktoken

os.environ["TIKTOKEN_CACHE_DIR"] = '/home/user/tiktoken'

encoding = tiktoken.get_encoding("o200k_base")

```

补充:

#如果是 cl100k_base.tiktoken 的情形;

blobpath = "https://openaipublic.blob.core.windows.net/encodings/cl100k_base.tiktoken"

cache_key = hashlib.sha1(blobpath.encode()).hexdigest()

print(cache_key)

# 输出 9b5ad71b2ce5302211f9c61530b329a4922fc6a4

将cl100k_base.tiktoken文件重命名为9b5ad71b2ce5302211f9c61530b329a4922fc6a4 即可。

http://www.dtcms.com/a/338259.html

相关文章:

  • MySQL和HiveSQL在查询上的区别
  • 上网行为管理
  • 用户认证与应用控制技术
  • 深入浅出 SQL:数据库操作的核心语言完全指南
  • 【c++】从灵活到规范:自定义消息机制的设计与实践
  • day10(练习题)
  • Three.js 动画循环学习记录
  • 6 webUI中图生图重绘方式--涂鸦、涂鸦重绘、局部重绘、上传蒙版重绘
  • 生成式引擎优化(GEO)AI搜索优化专家竞争力报告
  • 检测手绘图中不规则曲线交点的方法和一般规则线条交点的方法
  • rom定制系列------小米cc9机型 原生安卓15系统 双版线刷root 定制修改功能项
  • 力扣(分发糖果)
  • 【完整源码+数据集+部署教程】海洋垃圾与生物识别系统源码和数据集:改进yolo11-RVB
  • 深度优先遍历dfs(模板)
  • VS Code Copilot 完整使用教程(含图解)
  • 【笔记ing】考试脑科学 脑科学中的高效记忆法
  • 图论:Floyd算法
  • 从数学原理推导的角度介绍大语言MOE架构的本质
  • Linux系统WireShark抓取本地网卡报文
  • uv 现代化的虚拟环境管理工具
  • 量化线性层,将原始的fp16/bf16权重加载到Linear8bitLt模块中,调用int8_module.to(“cuda”)量化 (44)
  • 视频讲解:CatBoost、梯度提升 (XGBoost、LightGBM)对心理健康数据、交通流量及股票价格预测研究
  • Dubbo 的SPI
  • 深入解析RabbitMQ与AMQP-CPP:从原理到实战应用
  • IDEA 配置终端提示符样式,通过脚本方式
  • IntelliJ IDEA 开发配置教程
  • WPF---数据模版
  • 监督学习(Supervised Learning)和 无监督学习(Unsupervised Learning)详解
  • PCIe ASPM详解
  • 14.Linux线程(2)线程同步、线程安全、线程与fork