Embedding-Reranker
Embedding 和 Reranker 模型指南 1. 理论1.1 Embedding 模型:文字的「数字身份证」作用:将文字转换为高维向量,建立语义空间中的坐标定位使用场景: 🔍 搜索(”猫” → 匹配”猫咪””橘猫”) 🎥 推荐系统(科幻片→科幻片) 📊 聚类分析(自动分类用户评论)比喻:图书馆管理员快速搬来所有「狗」相关书籍,但顺序杂乱 1.2 Reranker 模型:结果的「智能排序员」作用:对初步结果重新排序,提升精准度使用场景: ❓ 问答系统(从100条答案选最优解) 🔍 搜索引擎(”苹果”优先显示水果) 🎬 推荐系统(按评分/热度排序)比喻:管理员二次整理书籍,按评分/出版时间排序 1.3 两者协作关系 Embedding Reranker 阶段 粗筛(召回) 精排(排序) 速度 快 较慢 目标 解决”有没有” 解决”哪个更好” 经典组合案例: 电商搜索:Embedding找”运动鞋” → Reranker按价格/销量排序 智能客服:Embedding匹配问题 →...
python_tool
Python 多环境管理综合指南1. 源码编译安装 Python操作步骤12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788#!/bin/bash# 用法:./install_python.sh <版本号> [安装目录]# 示例:./install_python.sh 3.8.12 /opt/python3.8set -euo pipefailif [ $# -lt 1 ] || [ $# -gt 2 ]; then echo "错误:参数数量不正确" echo "用法:$0 <python_version> [安装目录]" echo "示例:$0 3.8.12 /opt/python3.8" ...
mcp
MCP 工具使用文档https://gofastmcp.com/getting-started/installation 工具示例基础工具定义12345678mcp = FastMCP("Demo 🚀")Starlette()@mcp.tool(name='加法')def add(a: int, b: int) -> int: """Add two numbers""" return a + b#fastmcp run my_server.py:mcp --transport sse --port 8000 JSON数据处理工具12345678910111213141516171819202122232425262728293031323334353637@mcp.tool(name='从公网URL下载JSON文件并提取产品信息')def extract_product_info(url: str) ->...
cosyvoice2
CosyVoice 安装与使用指南环境准备1. 克隆代码仓库1234git clone --recursive https://github.com/FunAudioLLM/CosyVoice.gitcd CosyVoice# 若子模块克隆失败,重复执行直到成功git submodule update --init --recursive 2. 安装Miniconda1234wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.shbash Miniconda3-latest-Linux-x86_64.sh~/miniconda3/bin/conda init bashsource ~/.bashrc 3. 创建虚拟环境12conda create -n cosyvoice python=3.10conda activate cosyvoice 4. 安装系统依赖123sudo yum install sox sox-develsudo yum groupinstall...
sglang
SGLang 部署与使用指南目录 SGLang 部署与使用指南 目录 环境准备与安装 基础环境配置 Docker容器部署 服务启动配置 单节点启动 双节点分布式启动 功能测试 性能基准测试 PD分离部署 环境准备 服务部署 分布式部署 (2P1D) Prefill节点配置 Decode节点配置 环境准备与安装基础环境配置12345678# 禁用IPv6sysctl -w net.ipv6.conf.all.disable_ipv6=1 sysctl -w net.ipv6.conf.default.disable_ipv6=1# 设置网络接口和NCCL参数export GLOO_SOCKET_IFNAME=eth0#export NCCL_DEBUG=infoexport NCCL_IB_DISABLE=1 Docker容器部署12345678docker run -d -t --network=host --gpus all \ --privileged \ --ipc=host \ --cap-add=SYS_PTRACE \ ...
vllm
vLLM 分布式服务部署与压测指南目录 Docker 部署 服务启动 API 测试 压力测试 PD分离 https://www.modelscope.cn/models/deepseek-ai/DeepSeek-R1-Distill-Qwen-7Bhttps://docs.vllm.com.cn/en/latest/getting_started/quickstart.html#installation Docker 部署启动 vLLM 服务容器1234567891011docker run -t -d \ --name="vllm" \ --ipc=host \ --cap-add=SYS_PTRACE \ --network=host \ --gpus all \ --privileged \ --ulimit memlock=-1 \ --ulimit stack=67108864 \ -v /mnt:/mnt \ ...
常用压测命令
一、siege1. 下载与安装1234567891011# Ubuntu/Debiansudo apt-get install siege# CentOS/RHELsudo yum install siege# macOSbrew install siege# 验证安装siege --version 2. 核心参数 参数 说明 示例 -c <并发数> 并发用户数(必须参数) -c 100 -t <时间> 压测持续时间(s/m/h) -t 30s -r <次数> 每个用户重复请求次数 -r 50 -f <文件> 从文件读取多个URL进行压测 -f urls.txt -i 随机发送文件中的URL请求 -i -f urls.txt -b 无延迟模式(最大压力测试) -b -v 显示详细请求日志 -v 3. 示例命令12345# 100并发用户,持续30秒压测siege -c 100 -t 30s http://example.com#...
python as_completed
as_completed 方法详解🎯 核心区别:处理顺序 方法 执行顺序 结果获取顺序 适用场景 submit + 顺序处理 按提交顺序执行 按提交顺序获取 需要严格保持结果顺序的场景 as_completed 并行执行 按完成顺序获取 需要及时处理已完成任务的场景 📌 使用场景分析1. submit + 顺序处理典型代码: 123456from concurrent.futures import ThreadPoolExecutorwith ThreadPoolExecutor() as executor: futures = [executor.submit(task, param) for param in params_list] for future in futures: # 按提交顺序处理 print(future.result()) 特点: 必须等待前一个任务完成才能处理下一个 严格保持任务提交顺序 适合场景: 日志处理需要按时间顺序记录 结果需要顺序写入文件/数据库 2....
python ThreadPoolExecutor
并发执行方法对比(submit/as_completed/map)核心特性对比表 特征 executor.map() submit+顺序处理 as_completed 执行顺序 并发执行 并发执行 并发执行 结果顺序 保持输入顺序 保持提交顺序 按完成顺序 异常处理 遇到第一个异常立即抛出 可逐个处理异常 可单独处理每个任务异常 代码复杂度 ★☆☆ 最简单 ★★☆ 中等 ★★★ 最灵活 内存消耗 低(惰性迭代) 高(需存储所有future) 中(动态处理) 进度反馈 无法实时获取 需手动实现 自动实时反馈 适用场景 简单转换/批量处理 需要严格顺序的结果 需要及时处理完成的场景 方法详解1. executor.map()典型用法: 123456789101112131415161718192021222324252627282930313233343536373839404142from concurrent.futures import ThreadPoolExecutordef...
python threading
threading.Thread 适用场景:任务逻辑差异大;每个线程需要执行完全不同的逻辑 三个比较重要的参数 锁:threading.Lock()两种使用方法推荐with下方演示,第二种手动加锁lock.acquire(),然后释放lock.release() 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566#未使用的情况下def sing(): #with stats_lock: for i in range(3): print("正在唱歌...%d"%i) sleep(1)def dance(): #with stats_lock: for i in range(3): print("正在跳舞...%d"%i) ...
