(开源讲解)binance-chain 的 python-sdk 安装与使用

1.安装
要求 python 版本为 3.6 以上,安装命令很简单,

pip install python-binance-chain
如果安装过程中出现问题,请按照 sec256k1-py, 此处提供一种安装 sec256k1-py 失败的解决方案。

错误1:pkg-config包安装不成功
这个错误是由于pkg-config缺失引起的,手动安装这个包

错误2:secp256k1包安装不成功
安装这个包之前必须安装好这几个东西个,automake,pkg-config,libtool,libffi,gmp。

2.使用

2.1 生成钱包私钥,公钥和地址

from binance_chain.wallet import Wallet
from binance_chain.environment import BinanceEnvironment

product_env = BinanceEnvironment.get_production_env()
wallet = Wallet.create_random_wallet(env=product_env)
print(wallet.address)
print(wallet.private_key)
print(wallet.public_key)

代码比较简单,这里就不再多做解释了,下面看一下执行结果:

bnb1fx64c76dpew4pqqsrmvdg0l8xe8ud04h44yxsy
b88d4cc333e02d44a2e2426425d3ec4956e3793ef00a0d77a8c3338f127aa58d
b’\x02d\r\x84\x1f|\xd9J\x90\x85\xc7\x01P\xb8\xcc0\xca\xb2\x9d\xd3\x11?#\xec\xca\x19\\xd8@\x8d\x91\xc9q’
上面的结果依次是地址,私钥和经过处理的公钥,申明一下原始的公钥不是这样的

2.2 HttpApiClient 的使用

from binance_chain.http import HttpApiClient
from binance_chain.environment import BinanceEnvironment
testnet_env = BinanceEnvironment.get_production_env()
client = HttpApiClient(env=testnet_env)
prod_client = HttpApiClient()

account = client.get_account('bnb1acecavtwz6s4fat6540a5dz3vcq25lrsccxapp')
print(account)

account_seq = client.get_account_sequence('bnb1acecavtwz6s4fat6540a5dz3vcq25lrsccxapp')
print(account_seq)

fees = client.get_fees()
print(fees)

代码中第一个是获取 bnb1acecavtwz6s4fat6540a5dz3vcq25lrsccxapp的账户信息,第二个获取bnb1acecavtwz6s4fat6540a5dz3vcq25lrsccxapp交易序号,第三个获取费用。

执行结果如下:

{'account_number': 198155, 'address': 'bnb1acecavtwz6s4fat6540a5dz3vcq25lrsccxapp', 'balances': [{'free': '0.46438600', 'frozen': '0.00000000', 'locked': '0.00000000', 'symbol': 'BNB'}], 'flags': 0, 'public_key': [3, 142, 211, 241, 139, 162, 23, 200, 94, 195, 109, 117, 254, 214, 166, 254, 154, 61, 151, 18, 33, 59, 253, 59, 34, 38, 241, 210, 157, 129, 125, 240, 25], 'sequence': 19}


{'sequence': 19}


[{'msg_type': 'submit_proposal', 'fee': 500000000, 'fee_for': 1},
<think>好的,用户之前问过关于个人知识库的介绍,现在他想知道如何使用DeepSeek搭建本地个人知识库。我需要先理解DeepSeek是什么。根据我的知识库,DeepSeek是一家中国的公司,专注于让AGI成为现实,可能提供相关的工具或服务。不过用户可能指的是他们的某个具体产品,比如可能的大模型或者知识库管理工具。 首先,我需要确认用户提到的“DeepSeek”具体指什么。如果是他们的大模型,可能用户想用该模型来处理本地知识库的数据,比如通过API进行问答或信息提取。如果DeepSeek有开源的工具,可能需要指导用户如何部署本地环境,整合这些工具。 接下来,用户的需求是搭建本地个人知识库,所以需要强调本地部署的步骤,可能包括数据准备、工具安装、模型集成、检索系统搭建等。需要分步骤解释,可能需要结合常见的工具如LangChain、ChromaDB等,同时结合DeepSeek的模型。 用户可能的深层需求是希望有一个高效、私密的个人知识管理系统,能够利用先进的AI模型进行智能检索和处理。需要注意隐私保护,因为数据存储在本地,所以需要确保步骤中包括数据安全的部分。 还需要考虑用户的技术背景,是否需要简化步骤,或者提供不同的方案选择,比如自动化脚本、手动配置等。可能需要提供参考链接或GitHub仓库,帮助用户获取更多资源。 另外,用户之前得到过关于个人知识库的通用介绍,现在需要具体到DeepSeek的实现,因此需要将之前的通用步骤具体化,结合DeepSeek的工具或模型。例如,使用DeepSeek的API进行知识处理,或者使用开源模型进行本地部署。 最后,可能需要提醒用户注意依赖安装、环境配置、数据格式处理等常见问题,以及如何测试和优化知识库的效果。确保回答清晰、步骤明确,适合不同技术水平的用户参考。</think>以下是使用DeepSeek搭建本地个人知识库的详细方案,结合其大模型能力本地工具链,实现高效知识管理智能检索: --- ### **1. 准备工作** #### **工具选择** - **核心框架**:DeepSeek-R1(深度求索开源模型) + LangChain(知识库框架) - **向量数据库**:ChromaDB(轻量级本地向量库)或 Milvus(高性能) - **文本处理**:Unstructured(文档解析)、Sentence-Transformers(文本向量化) - **环境依赖**:Python 3.8+、Docker(可选) #### **数据准备** - 将个人知识文件(PDF/Word/Markdown/网页等)统一存放于 `./data` 目录 - 推荐格式:结构化Markdown(便于AI解析) --- ### **2. 搭建流程** #### **步骤1:部署DeepSeek本地模型** - **方案A:API调用**(需网络,适合快速验证) ```python from deepseek_api import DeepSeek # 假设官方提供SDK model = DeepSeek(api_key="your_key", model="deepseek-r1") ``` - **方案B:本地部署**(需GPU资源) 下载开源模型权重(如DeepSeek-7B),使用LLAMA.cpp量化推理: ```bash git clone https://github.com/ggerganov/llama.cpp ./llama.cpp -m deepseek-7b-q4_0.gguf --prompt "知识库问答" ``` #### **步骤2:构建知识向量库** ```python from langchain.document_loaders import DirectoryLoader from langchain.text_splitter import RecursiveCharacterTextSplitter from langchain.embeddings import HuggingFaceEmbeddings from langchain.vectorstores import Chroma # 加载本地文档 loader = DirectoryLoader('./data', glob="**/*.md") docs = loader.load() # 文本分块(每块500字符,重叠50字符) text_splitter = RecursiveCharacterTextSplitter( chunk_size=500, chunk_overlap=50 ) chunks = text_splitter.split_documents(docs) # 生成向量并存储 embeddings = HuggingFaceEmbeddings(model_name="BAAI/bge-small-zh") vector_db = Chroma.from_documents(chunks, embeddings, persist_directory="./chroma_db") ``` #### **步骤3:集成DeepSeek问答链** ```python from langchain.chains import RetrievalQA from langchain.prompts import PromptTemplate # 自定义提示模板 prompt_template = """基于以下上下文回答用户问题: {context} 问题:{question} 答案(简洁中文,不超过3句话): """ PROMPT = PromptTemplate(template=prompt_template, input_variables=["context", "question"]) # 构建问答系统 qa_chain = RetrievalQA.from_chain_type( llm=model, # 替换为实际DeepSeek实例 chain_type="stuff", retriever=vector_db.as_retriever(), chain_type_kwargs={"prompt": PROMPT} ) # 示例提问 response = qa_chain.run("如何用PyTorch实现线性回归?") print(response) ``` --- ### **3. 优化方向** #### **性能提升** - 使用`FAISS`替代Chroma加速向量检索 - 对高频问题设置缓存层(如Redis) - 量化模型降低推理资源消耗 #### **功能扩展** - 添加自动摘要功能(利用DeepSeek生成章节摘要) - 实现知识图谱可视化(通过NetworkX+PyVis) - 支持语音输入/输出(集成Whisper+GPT-SOVITS) #### **安全增强** - 使用Vault对敏感知识加密 - 设置本地防火墙限制外部访问 - 定期备份向量数据库 --- ### **4. 典型使用场景** 1. **智能检索**: `输入`:自然语言问题(如“2023年AI顶会有哪些趋势?”) `输出`:关联论文笔记+模型生成的整合分析 2. **自动整理**: 上传会议录音 → 自动转写 → DeepSeek提取关键结论 → 生成结构化纪要 3. **灵感辅助**: 输入碎片想法 → 知识库关联已有笔记 → 推荐拓展阅读方向 --- ### **5. 注意事项** - 硬件要求:最低8GB RAM(纯CPU),推荐NVIDIA GPU(16GB显存+) - 中文优化:需使用`bge-zh`等中文专用嵌入模型 - 数据更新:设置文件监视器(如Watchdog)实现增量索引 - 隐私保护:敏感数据建议全程离线处理 --- **完整代码示例**可参考: [DeepSeek-Knowledge-Base GitHub仓库](https://github.com/deepseek-ai/examples)(需官方提供) 通过此方案,可构建具备语义理解能力的个人知识中枢,实现从“信息存储”到“智能洞察”的升级。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

The_Web3_社区

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值