第5.5章:ModelScope-Agent:支持多种API无缝集成的开源框架
5.5.1 ModelScope-Agent概述
ModelScope-Agent,由阿里巴巴旗下ModelScope社区开发,是一个开源的、模块化的框架,旨在帮助开发者基于大型语言模型快速构建功能强大、灵活性高的智能代理。它的核心优势在于支持与多种API和外部系统的无缝集成,能够处理从简单任务自动化到复杂多代理协作的广泛应用场景。
ModelScope-Agent不仅提供统一的模型交互接口,还通过内置工具生态系统、自定义工具注册机制和多模态知识检索功能,为企业提供了从原型设计到生产部署的全流程支持。其开源性质和活跃的社区生态进一步降低了技术门槛,使其成为企业技术团队、AI工程师和产品经理的理想选择。本章将从技术架构、实现方法、应用场景、最佳实践等多个维度,系统阐述ModelScope-Agent的核心功能及其在企业实践中的价值。
5.5.1.1 背景与意义
随着ChatGPT、Qwen等大型语言模型的兴起,AI技术已从学术研究走向实际应用。然而,单一的语言模型在处理复杂任务时往往受限于缺乏外部知识访问、工具调用和动态规划能力。智能代理通过结合感知、推理、工具使用和记忆机制,弥补了这一不足。ModelScope-Agent正是在这一背景下应运而生,旨在通过开源方式降低企业开发AI代理的成本,同时提供强大的集成能力以满足多样化的业务需求。
5.5.1.2 目标与定位
ModelScope-Agent的目标是为开发者提供一个灵活、可扩展的框架,支持从简单的问答机器人到复杂的多代理协作系统。其主要定位包括:
- 企业开发者:为技术团队提供快速构建和部署AI代理的工具。
- 行业应用:支持金融、医疗、制造等行业的定制化解决方案。
- 开源社区:通过GitHub和ModelScope Studio,鼓励社区贡献和知识共享。
5.5.2 核心功能与设计理念
ModelScope-Agent的设计理念围绕模块化、可扩展性和易用性展开,以满足企业从快速原型到生产级部署的需求。以下为其核心功能和设计原则的详细介绍:
5.5.2.1 模块化代理框架
- 角色与任务定义:开发者可通过简单的配置文件或代码定义代理的角色(如“客户服务助手”或“数据分析专家”)和任务目标。角色指令明确了代理的行为模式,而任务定义则包括输入格式、输出要求和工具依赖。
- 工作流自动化:框架内置任务分解、规划和执行模块,能够自动将复杂任务拆解为子任务,并调用相应工具完成。例如,一个生成营销内容的代理可能涉及文本生成、图像生成和社交媒体API调用等多个子任务。
- 单代理与多代理支持:支持单代理处理独立任务,以及多代理协作处理复杂场景(如客户服务与库存管理代理的协同工作)。
5.5.2.2 统一的大型语言模型接口
- 支持的模型:ModelScope-Agent兼容多种开源模型(如Qwen、LLaMA、ChatGLM)以及通过API访问的专有模型(如OpenAI的GPT系列、阿里云的DashScope模型)。开发者可根据任务需求和预算选择合适的模型。
- 模型抽象层:通过BaseChatModel类提供统一的模型交互接口,屏蔽了不同模型API的复杂性。例如,切换从Qwen到GPT-4仅需更改配置文件中的模型名称和API密钥。
- 流式与非流式交互:支持流式响应以提升用户体验,同时提供非流式模式以确保复杂任务的稳定性。
5.5.2.3 丰富的工具生态系统
- 内置工具:包括代码解释器(code_interpreter)、天气查询(amap_weather)、文本转图像生成(image_gen)、网页浏览(web_search)等。这些工具覆盖了常见的企业应用场景,如数据分析、内容生成和信息检索。
- 自定义工具注册:开发者可根据OpenAPI标准定义自定义工具,并通过简单的注册机制集成到框架中。例如,企业可开发内部数据库查询API或专有业务系统接口。
- 工具调用优化:框架支持动态工具选择和并行调用(2024年7月更新),显著提升任务执行效率。
5.5.2.4 内存与上下文管理
- 短期记忆:存储当前对话的上下文,确保多轮交互的连贯性。例如,一个客户服务代理可记住用户在对话中的偏好和问题背景。
- 长期记忆:通过向量数据库支持历史数据的存储和检索,适用于需要跨会话知识积累的场景(如企业知识库管理)。
- RAG集成:利用检索增强生成(Retrieval-Augmented Generation, RAG)技术,支持多模态知识检索(2024年6月升级),能够同时处理文本、表格和图像数据。
5.5.2.5 多代理协作机制
- AgentEnvMixin:基于Ray分布式计算框架,提供多代理通信的发布/订阅机制,确保代理间交互高效且解耦。
- 代理注册中心:动态管理代理实例,支持多代理系统的扩展和负载均衡。例如,在一个供应链管理场景中,库存代理、物流代理和财务代理可通过注册中心协调工作。
- 状态同步:通过环境模块跟踪多代理系统的全局状态,避免冲突并确保任务一致性。
5.5.2.6 开源与社区驱动
- 开源许可:ModelScope-Agent遵循Apache 2.0许可,代码托管于GitHub,允许自由修改和商业使用。
- ModelScope Studio:提供在线开发和测试环境,支持通过AgentFabric进行交互式代理创建,降低了非技术人员的开发门槛。
- 社区贡献:自2023年发布以来,社区已贡献了数百个工具和模板,涵盖从教育到金融的多种场景。
5.5.3 技术架构详解
ModelScope-Agent的架构分为以下四个核心模块,共同支持代理的感知、规划、执行和协作能力:
5.5.3.1 模型控制器(LLM Controller)
- 功能:负责任务推理、响应生成和工具调用决策,是代理的核心“大脑”。
- 实现:通过BaseChatModel类封装模型交互逻辑,支持多种模型提供商(如DashScope、OpenAI、Hugging Face)。开发者可通过继承该类实现自定义模型集成。
- 配置参数:包括模型名称、API密钥、温度参数(控制输出随机性)、最大上下文长度等。支持通过YAML配置文件或环境变量动态调整。
- 优化机制:支持模型量化(如INT8量化)和推理加速(如vLLM集成),以降低延迟和计算成本。
5.5.3.2 工具使用模块(Tool Usage Module)
- 工具检索:基于任务描述和输入,自动选择最合适的工具。例如,处理“查询上海天气”任务时,框架会优先调用amap_weather工具。
- API集成:支持OpenAPI 3.0标准,允许开发者快速集成RESTful API、gRPC或其他协议的外部服务。2024年5月引入的Tools API进一步简化了工具开发。
- 安全隔离:工具执行可在Docker容器或沙箱环境中运行,防止恶意代码或数据泄露。
- 并行调用:支持多个工具同时执行(如同时查询天气和生成图像),显著提升复杂任务的吞吐量。
5.5.3.3 内存模块(Memory Module)
- 上下文管理:通过内存池存储对话历史、工具调用结果和中间状态,确保任务执行的连贯性。
- 向量数据库:集成Chroma或FAISS等向量数据库,支持高效的语义检索。2024年6月的多模态RAG升级进一步支持图像和表格数据的检索。
- 知识管理:支持企业知识库的导入和索引,适用于内部文档查询或行业知识检索。
5.5.3.4 多代理环境(Multi-Agent Environment)
- 通信框架:基于Ray的Actor模型实现异步通信,支持大规模代理协作。
- 环境状态管理:通过Environment Module跟踪全局状态,记录代理间的交互和任务进度。
- 容错机制:支持代理故障恢复和任务重新分配,确保系统高可用性。
5.5.4 实现工作流与代码示例
构建一个ModelScope-Agent代理的过程包括环境准备、代理配置、工具集成和任务执行。以下为详细步骤和示例:
5.5.4.1 环境准备
-
安装依赖:通过pip安装核心库:pip install modelscope-agent==0.3.0。推荐使用Python 3.8+。
-
API密钥配置:设置环境变量,如:
bash
export DASHSCOPE_API_KEY='YOUR_DASHSCOPE_API_KEY' export AMAP_TOKEN='YOUR_AMAP_TOKEN'
-
可选依赖:若需多模态功能,可安装transformers和torch;若需向量数据库,安装chromadb。
5.5.4.2 代理配置
- 角色模板:定义代理的行为和目标,例如:“你是一个天气预报和城市景观生成助手,负责查询天气并生成相关图像。”
- 模型选择:指定模型(如qwen-max)和提供商(如dashscope)。
- 工具列表:配置内置工具(如amap_weather、image_gen)或自定义工具。
5.5.4.3 代码示例:天气预报代理
以下为一个完整的天气预报代理实现:
python
import os
from modelscope_agent.agents.role_play import RolePlay
from modelscope_agent.tools import register_tool, Tool# 配置环境变量
os.environ['DASHSCOPE_API_KEY'] = 'YOUR_DASHSCOPE_API_KEY'
os.environ['AMAP_TOKEN'] = 'YOUR_AMAP_TOKEN'# 定义自定义工具(示例:企业数据库查询)
class DatabaseQueryTool(Tool):def __init__(self):super().__init__(name='db_query', description='Query enterprise database.')def call(self, params):# 模拟数据库查询逻辑return {'result': 'Database query executed successfully.'}# 注册自定义工具
register_tool(DatabaseQueryTool())# 定义代理角色和配置
role_template = ('你是一个天气预报和城市景观生成助手。''根据用户输入查询天气,并生成城市图像。''如需额外数据,可调用企业数据库。'
)
llm_config = {'model': 'qwen-max','model_server': 'dashscope','temperature': 0.7,'max_tokens': 2048
}
function_list = ['amap_weather', 'image_gen', 'db_query']# 初始化代理
bot = RolePlay(function_list=function_list,llm=llm_config,instruction=role_template
)# 运行代理
response = bot.run('请查询北京市朝阳区的天气,并生成一张城市景观图。')# 处理响应
text = ''
for chunk in response:text += chunk
print(text)
此示例展示了一个集成了天气查询、图像生成和自定义数据库查询的代理。输出可能包括天气信息、生成的图像URL和数据库查询结果。
5.5.4.4 自定义工具开发
开发自定义工具的步骤:
- 定义工具类,继承Tool基类,实现call方法。
- 根据OpenAPI标准编写工具的JSON schema,描述输入参数和输出格式。
- 使用register_tool函数将工具注册到框架。
- 在代理配置中添加工具名称。
5.5.4.5 多代理协作示例
以下为一个多代理协作的伪代码,展示库存管理和客户服务代理的交互:
python
from modelscope_agent.multi_agent import MultiAgentEnv# 定义环境和代理
env = MultiAgentEnv()
inventory_agent = RolePlay(instruction='管理库存,检查产品可用性。',function_list=['inventory_api'],llm={'model': 'qwen-max'}
)
service_agent = RolePlay(instruction='处理客户订单,查询库存状态。',function_list=['order_api', 'inventory_query'],llm={'model': 'qwen-max'}
)# 注册代理到环境
env.register_agent(inventory_agent, 'inventory')
env.register_agent(service_agent, 'service')# 运行多代理任务
env.run('客户订购100件产品,检查库存并确认订单。')
此示例中,客户服务代理通过inventory_query工具与库存代理通信,完成订单处理。
5.5.5 企业应用场景
ModelScope-Agent的灵活性使其在多个行业具有广泛应用。以下为典型场景和实现方式:
5.5.5.1 客户服务
- 场景:构建智能客服系统,支持多轮对话、CRM集成和工单自动化。
- 实现:使用Qwen模型处理自然语言理解,集成CRM API(如Salesforce)获取客户数据,通过code_interpreter自动生成工单。
- 案例:某零售企业部署的ModelScope-Agent客服代理,减少了80%的人工干预,平均响应时间从5分钟降至30秒。
5.5.5.2 数据分析与决策支持
- 场景:自动化数据分析流程,生成洞察报告并支持管理决策。
- 实现:结合RAG检索企业数据集,使用code_interpreter执行Python分析脚本,生成可视化图表。
- 案例:一家金融公司利用ModelScope-Agent分析市场数据,生成投资建议报告,分析效率提升50%。
5.5.5.3 内容生成与营销
- 场景:生成个性化广告文案、社交媒体内容和视觉素材。
- 实现:集成image_gen工具生成广告图片,使用web_search获取市场趋势,结合长期记忆存储用户偏好。
- 案例:某电商平台通过ModelScope-Agent生成节日促销内容,点击率提升30%。
5.5.5.4 行业特定应用
- 金融:自动化ECS实例续费、风险评估和反欺诈检测,集成阿里云API和内部风控系统。
- 医疗:构建患者数据分析代理,结合RAG检索医学文献,支持诊断辅助。
- 制造:实现供应链优化代理,集成ERP系统和物流API,动态调整生产计划。
5.5.6 优势与局限性
5.5.6.1 优势
- 开发效率高:通过预配置工具和模板,开发者可在数小时内完成原型开发。
- 灵活集成:支持OpenAPI标准,轻松集成企业现有系统。
- 社区生态:活跃的ModelScope社区提供丰富的工具、模型和文档支持。
- 成本效益:开源框架结合高效的模型优化(如量化),降低部署成本。
5.5.6.2 局限性
- API配置复杂:多API集成需正确配置密钥和权限,可能增加初始设置时间。
- 性能瓶颈:多代理协作或高并发场景下,需优化Ray配置以避免延迟。
- 模型依赖:代理性能受底层LLM限制,需根据任务选择合适的模型。
- 文档不足:部分高级功能(如多模态RAG)的文档尚不完善,需依赖社区支持。
5.5.7 企业采用的最佳实践
- 分阶段实施:从简单任务(如问答机器人)开始,逐步扩展到多代理协作系统。
- 模型与工具优化:根据任务需求选择模型(成本敏感任务用Qwen,复杂任务用GPT-4o),并优先使用并行工具调用。
- 安全与合规:为工具执行配置沙箱环境,确保数据隐私;定期审计API调用日志。
- 性能监控:使用ModelScope Studio的监控工具,跟踪响应时间、错误率和资源使用情况。
- 社区参与:积极参与ModelScope社区,获取最新工具和最佳实践。
5.5.8 案例研究:ModelScopeGPT
ModelScopeGPT是基于ModelScope-Agent构建的旗舰应用,集成了超过1,000个公开AI模型和社区知识库,支持多模态任务处理(如文本生成、图像生成、代码调试)。其主要功能包括:
- ECS续费自动化:通过阿里云API实现云服务续费,减少人工操作。
- 多模态内容生成:结合文本和图像生成工具,创建营销素材。
- 知识检索:通过RAG检索社区知识,回答技术问题。
自2023年发布以来,ModelScopeGPT在首月处理了17万次用户请求,覆盖4万用户,证明了其在高并发场景下的稳定性和可扩展性。企业用户反馈显示,该代理显著降低了运营成本,同时提升了用户体验。
5.5.9 未来发展方向
ModelScope-Agent的开发路线图显示,其未来将聚焦以下领域:
- 多模态增强:进一步支持视频、音频等多模态数据处理,预计2025年初推出相关功能。
- 自主性提升:通过强化学习和动态规划,增强代理的自主决策能力。
- 边缘部署:优化框架以支持边缘设备部署,适用于物联网和实时应用。
- 社区扩展:计划推出更多行业模板(如零售、医疗),降低垂直领域开发门槛。
2024年的更新(如并行工具调用、多模态RAG)已为这些目标奠定了基础。未来,ModelScope-Agent有望成为企业智能化转型的核心工具。
5.5.10 结论
ModelScope-Agent作为一款开源的智能代理框架,以其模块化架构、强大的API集成能力和活跃的社区支持,在企业AI应用中展现出巨大潜力。从客户服务到数据分析,从内容生成到行业定制化解决方案,ModelScope-Agent为企业提供了灵活、高效的开发工具。通过结合最佳实践和持续的社区创新,开发者能够利用该框架快速构建生产级AI代理,推动企业数字化转型迈向新高度。
相关文章:
第5.5章:ModelScope-Agent:支持多种API无缝集成的开源框架
5.5.1 ModelScope-Agent概述 ModelScope-Agent,由阿里巴巴旗下ModelScope社区开发,是一个开源的、模块化的框架,旨在帮助开发者基于大型语言模型快速构建功能强大、灵活性高的智能代理。它的核心优势在于支持与多种API和外部系统的无缝集成&…...
筑牢数字防线:商城系统安全的多维守护策略
一、构建网络安全防护屏障 网络安全是商城系统安全的第一道防线。企业应采用先进的防火墙技术,实时监控和过滤进出网络的流量,阻止非法访问和恶意攻击。入侵检测与防御系统(IDS/IPS)也是不可或缺的安全组件,它能够及…...
PTC加热片详解(STM32)
目录 一、介绍 二、传感器原理 1.原理图 2.引脚描述 三、程序设计 main文件 jdq.h文件 jdq.c文件 四、实验效果 五、资料获取 项目分享 一、介绍 PTC是正温度系数热敏电阻的英文简称,其电阻值随着PTC热敏电阻本体温度的升高呈现阶跃性的增加。温度越高&…...
OpenCV 图形API(64)图像结构分析和形状描述符------在图像中查找轮廓函数findContours()
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 在二值图像中查找轮廓。 该函数使用[253]中的算法从二值图像检索轮廓。轮廓是形状分析以及对象检测和识别的有用工具。请参阅 OpenCV 示例目录中…...
GIS开发笔记(15)基于osg和osgearth实现三维地图上添加路网数据(矢量shp)
一、实现效果 二、实现原理 准备路网图层数据(.shp、.prj、.dbf、.cpg),设置样式、贴地,添加图层到地球节点。 三、参考代码 {// 获取当前可执行程序所在的目录QString exeDir = QCoreApplication::applicationDirPath();// 构造 Shapefile 文件的完整路径...
Golang日志模块之xlog
基于douyu的xlog 依赖 github.com/douyu/jupiter/pkg/xlog go.uber.org/zap gopkg.in/natefinch/lumberjack.v2log相关结构体 types/log.go type Log struct {Env string toml:"env"InfoLogFileName string toml:"infoLogFileName"Error…...
guvcview-源码记录
guvcview源码记录 一、概述二、项目结构1. guvcview2. gview_audio3. gview_encoder4. gview_render1. render.c2. render_sdl2.c3. render_osd_crosshair.c4. render_osd_vu_meter.c5. render_fx.c 3. gview_v4l2core 三、四、五、六、 一、概述 项目地址:guvcvie…...
对比2款国产远控软件,贝锐向日葵更优
贝锐向日葵和ToDesk是两款国产的远程控制软件,其中贝锐向日葵比较老牌,2009年就推出了最早的版本,而ToDesk则是在前几年疫情期间出现的。如果要在这两款远控软件中进行一个对比和选择,我们可以从功能配置、性能表现、系统支持、使…...
SOC估算:开路电压修正的安时积分法
SOC估算:开路电压修正的安时积分法 基本概念 开路电压修正的安时积分法是一种结合了两种SOC估算方法的混合技术: 安时积分法(库仑计数法) - 通过电流积分计算SOC变化 开路电压法 - 通过电池电压与SOC的关系曲线进行校准 方法原…...
maxscript根据音频创建动画表情
方案1: Python pydub / Audacity phoneme recognition 来提取语音中的音素(phonemes)并输出为 JSON 供 3ds Max 使用 方案2: Papagayo输出.pgo 文件,通过 Python 脚本解析,然后转换成 JSON。 下面介绍下方案2&#…...
使用ast解ob混淆时关于types的总结
在AST解OB混淆过程中,babel/types模块(简称types)是核心操作工具,以下是典型应用场景及具体代码示例: 一、字符串解密场景 场景:OB混淆常将字符串存储为十六进制或Unicode编码,需还原为明文 ty…...
每天学一个 Linux 命令(32):sort
可访问网站查看,视觉品味拉满: http://www.616vip.cn/32/index.html sort 是 Linux 中用于对文本文件的行进行排序的命令,支持按字典序、数字、月份等多种方式排序。以下是详细说明和示例: 命令语法 sort [选项]... [文件]...常用选项 -n 或 --numeric-sort 按数值大小…...
解释两个 Django 命令 makemigrations和migrate
python manage.py makemigrations 想象一下,你正在设计一个房子。在开始建造之前,你需要一个详细的蓝图来指导建筑过程。在 Django 中,当你定义或修改模型(比如 Employee),你实际上是在设计数据库的“房子…...
tkinter的窗口构建、原生组件放置和监测事件
诸神缄默不语-个人技术博文与视频目录 本文关注用Python3的tkinter包构建GUI窗口,并用tkinter原生组件来进行排版(通过pack() / grid() / place(),并监测基础的事件(如按钮被点击后获取文本框输入信息、单/多选框选择结果等&…...
Hot100方法及易错点总结2
本文旨在记录做hot100时遇到的问题及易错点 五、234.回文链表141.环形链表 六、142. 环形链表II21.合并两个有序链表2.两数相加19.删除链表的倒数第n个节点 七、24.两两交换链表中的节点25.K个一组翻转链表(坑点很多,必须多做几遍)138.随机链表的复制148.排序链表 N…...
WebUI可视化:第6章:项目实战:智能问答系统开发
第6章:项目实战:智能问答系统开发 学习目标 ✅ 完整实现前后端分离的问答系统 ✅ 掌握本地AI模型的集成方法 ✅ 实现对话历史管理功能 ✅ 完成系统部署与性能优化 6.1 项目整体设计 6.1.1 系统架构 graph TDA[用户界面] -->|输入问题| B(Web服务器)B -->|调用模型| …...
项目质量管理
项目质量管理核心要点与高频考点解析 一、项目质量管理核心框架 三大核心过程: 规划质量管理:制定质量标准和计划(预防为主)。实施质量保证:审计过程,确保符合标准(过程改进)。控…...
利用TTP协议 ETag + 路由守卫 实现前端发版后通知用户更新得一个方案
利用 ETag 做提示更新的实现方案 ETag(Entity Tag)是万维网协议HTTP的一部分,是HTTP协议提供的若干机制中的一种Web缓存验证机制,是一个可以与Web资源关联的记号(token),并且允许客户端进行缓存…...
uniapp-商城-36-shop 购物车 选好了 进行订单确认2 支付方式颜色变化和颜色滤镜filter
颜色滤镜,在好多网页都这样使用,滤掉彩色,显示黑白,这在一些关键的日子中都这样使用。 1、依然回到订单确认页面 看到支付的颜色了嘛? <view class"payType"><view class"box" :class&q…...
CSRF请求伪造
该漏洞主要是关乎于用户,告诫用户不可乱点击链接,提升自我防范,才能不落入Hacker布置的陷阱! 1. cookie与session 简单理解一下两者作用 1.1. 🍪 Cookie:就像超市的会员卡 存储位置:你钱包里…...
爬虫瑞数6案例:深圳大学总医院,webEnv补环境
爬虫瑞数6案例:深圳大学总医院,webEnv补环境 一、准备工作二、webEnv补环境三、验证cookie四、验证请求结果五、总结声明: 该文章为学习使用,严禁用于商业用途和非法用途,违者后果自负,由此产生的一切后果均与作者无关 前言: 之前出了一篇深圳大学总医院爬虫教程,那时候…...
运维 vm windows虚拟机nat网络配置
参考 VMWare虚拟机网络配置 - 秋夜雨巷 - 博客园 vm设置虚拟网络段 设置网络段 网关地址 设置DHCP 自动化分配网络段 主机:设置ip 控制面板\所有控制面板项\网络连接 出现设置的虚拟机网卡 设置ip 虚拟机:设置ip...
PPO 强化学习机械臂 IK 训练过程可视化利器 Tensorboard
视频讲解: PPO 强化学习机械臂 IK 训练过程可视化利器 Tensorboard PPO 强化学习过程中,设置了verbose会显示数据,但还是不够直观,这里上一个可视化利器,Tensorboard,实际上stable baselines3中已经有了这部…...
巧记英语四级单词 Unit5-中【晓艳老师版】
ignore v.无视,不理睬 发音“一个闹”,对付一个无理取闹的孩子,最好的方式就是无视 不理睬ignorant a.无知的,不礼貌的 对于什么事都无视,中国第一个不平等条约问也不知道就是无知的neglect n.忽视 negative消极的&a…...
Linux操作系统从入门到实战(三)Linux基础指令(上)
Linux操作系统从入门到实战(三)Linux基础指令(上) 前言一、ls 指令二、pwd三、cd四、touch 指令五、mkdir六、rmdir 指令和 rm 指令七、man 指令八、cp九、mv 指令十、cat 指令十一、 more 指令十二、less 指令十四、head 指令十五…...
MDF标准
MDF(Measurement Data Format),测量数据格式,是ASAM(自动化及测量系统标准协会)定义的, 是一种二进制文件,需要使用二进制文件编辑器查看. 作为一种紧凑的二进制格式,ASAM MDF提供了对海量测量数据的高效及高性能存储方案。MDF由松散耦合的二进制块组成,以实现灵活且高…...
如何本地无损放大图片保持高清画质
软件介绍 这款工具能让你轻松放大图片而不失真,最高支持4倍放大,并提供四种AI模型,适配不同风格的图像处理需求,包括普通照片、插画和漫画。它支持JPG、PNG、WEBP三种格式的输出,小巧便携,仅占用54.1MB空…...
【视频时刻检索】Text-Video Retrieval via Multi-Modal Hypergraph Networks 论文阅读
Text-Video Retrieval via Multi-Modal Hypergraph Networks 论文阅读 ABSTRACT1 INTRODUCTION2 PRELIMINARIES3 OUR FRAMEWORK3.1 Multi-Modal Hypergraph Networks3.2 Variational Inference 4 EXPERIMENT6 CONCLUSION 文章信息: 发表于:WSDM 24 原文…...
PowerShell脚本实现|从文件夹动画序列中均匀选取关键帧(保留首尾帧)
文章目录 1. 问题概述2. 两种实现方案方案一:自动计算法(推荐)方案二:手动列表法 3. 操作流程对比4. 注意事项5. 常见问题解决6. 总结建议 1. 问题概述 我们经常需要从动画序列中选取关键帧,例如: 文件名…...
红黑树——如何靠控制色彩实现平衡的?
目录 引言 一、认识红黑树(RBTree) 二、为什么有了AVL树,还要红黑树? 1、AVL树 vs 红黑树,两棵树区别 2、如何选择? 三、红黑树的核心操作 3.1、红黑树结构定义 3.2、插入操作 四、红黑树的验证 …...
金仓数据库KingbaseES技术实践类深度剖析与实战指南
一、语法兼容及迁移实战 (一)语法兼容的多元魅力 在当今多元化的数据库应用环境中,金仓数据库管理系统KingbaseES凭借其卓越的语法兼容能力脱颖而出。它采用的融合数据库架构,通过多语法体系一体化架构,实现了对Orac…...
Estimands与Intercurrent Events:临床试验与统计学核心框架
1. Estimands(估计目标)概述 1.1 定义与作用 1.1.1 定义 Estimand是临床试验中需明确提出的科学问题,即研究者希望通过数据估计的“目标量”,定义“治疗效应”具体含义,确保分析结果与临床问题一致。 例如,在研究某种新药对高血压患者降压效果时,Estimand可定义为“在…...
测试基础笔记第十二天
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、python基础1.认识python2.python环境搭建1.安装Python解释器2.安装PyCharm 3.基础语法1.注释2.变量3.标识符4.数据类型 4.程序的输入和输出1.程序的输入2.程序的…...
0. Selenium工具的安装
目录 前言一、安装Chrome浏览器与驱动1 安装2. 解压驱动包并将其放到Python目录中 二、安装Selenium0 前置条件:已经安装了Python1. 安装2.检查是否安装成功3. 测试用例 前言 提示:本篇介绍selenium工具的安装和使用 一、安装Chrome浏览器与驱动 1 安…...
MySQL元数据库完全指南:探秘数据背后的数据
🎥博主:程序员不想YY啊 💫CSDN优质创作者,CSDN实力新星,CSDN博客专家 🤗点赞🎈收藏⭐再看💫养成习惯 ✨希望本文对您有所裨益,如有不足之处,欢迎在评论区提出…...
嵌入式鸿蒙系统环境搭建与配置要求实现01
各位开发者大家好,今天主要给大家分享一下,鸿蒙系统的环境配置实现。 第一:鸿蒙配置基本要求 对电脑的要求,虚拟机配置建议 200GB 硬盘大小,10GB 内存,4*2CPU。 安装必要的依赖文件方法: sudo apt-get update && sudo apt-get install binutils git git-lfs g…...
【深度强化学习 DRL 快速实践】逆向强化学习算法 (IRL)
Inverse Reinforcement Learning (IRL) 详解 什么是 Inverse Reinforcement Learning? 在传统的强化学习 (Reinforcement Learning, RL) 中,奖励函数是已知的,智能体的任务是学习一个策略来最大化奖励 而在逆向强化学习 (Inverse Reinforc…...
Coding Practice,48天强训(23)
Topic 1:打怪(回合数与刀数、先后手关系) 登录—专业IT笔试面试备考平台_牛客网 #include <bits/stdc.h> using namespace std;int main() {int t;cin >> t;while (t--) {int h, a, H, A;cin >> h >> a >> H…...
策略模式(Strategy Pattern)详解
文章目录 1. 什么是策略模式?2. 为什么需要策略模式?3. 策略模式的核心概念3.1 策略(Strategy)3.2 具体策略(Concrete Strategy)3.3 上下文(Context) 4. 策略模式的结构5. 策略模式的…...
websheet 之 table表格
本控件只实现table的基础功能。 {.is-danger} 一、table基本使用 可以通过addTable函数动态增加table,代码如下: let tableColumn [];let col 1;tableColumn.push(测试 (col) 列);tableColumn.push(测试 (col) 列);tableColumn.push(测试 (col) …...
Python Cookbook-6.9 快速复制对象
任务 为了使用 copy.copy,需要实现特殊方法__copy__。而且你的类的__init__比较耗时所以你希望能够绕过它并获得一个“空的”未初始化的类实例。 解决方案 下面的解决方案可同时适用于新风格和经典类: def empty_copy(obj):class Empty(obj.__class__):def __in…...
Linux NIO 原理深度解析:从内核到应用的高性能 I/O 之道
Linux 的 非阻塞 I/O(Non-blocking I/O,NIO) 是构建高性能服务器的核心技术,其核心思想是通过 事件驱动模型 和 零拷贝技术 实现高并发、低延迟的网络通信。以下从底层机制到实际应用进行全面剖析。 一、Linux I/O …...
Redis 集群切片全解析:四种常见技术的原理、优劣与应用
Redis 集群切片是将数据分散存储在多个 Redis 节点上的技术,以提高系统的可扩展性和性能。以下是一些常见的 Redis 集群切片方式: 1.哈希切片 原理:通过对数据的键进行哈希运算,将哈希值映射到不同的切片(槽…...
html中margin的用法
在 HTML 页面布局中,margin 是 CSS 中用于设置 元素与元素之间的外边距(即元素外部的空白区域) 的属性。 它可以单独设置四个方向的边距:上(top)、右(right)、下(bottom…...
网络流量分析 | 流量分析基础
流量分析是网络安全领域的一个子领域,其主要重点是调查网络数据,以发现问题和异常情况。本文将涵盖网络安全和流量分析的基础知识。 网络安全与网络中的数据 网络安全的两个最关键概念就是:认证(Authentication)和授…...
语音合成之六端到端TTS模型的演进
端到端TTS模型的演进 引言Tacotron:奠基之作FastSpeech:解决效率瓶颈VITS:实现高保真和富有表现力的语音SparkTTS:利用LLM实现高效可控的TTSCosyvoice:一种可扩展的多语种TTS方法端到端TTS模型的演进与未来方向 引言 …...
文件的读取操作
#import time # 导入time 库 # 打开文件 fileopen("E:\Dasktape/python_test.txt","r",encoding"UTF-8")# 读取文件 print(f"读取文件的所有内容内容:{file.read()}\n") #\n是换行字符 print(f"读取10个字节的文件内容:{file.re…...
【Linux学习笔记】进程的fork创建 exit终止 wait等待
【Linux学习笔记】进程的fork创建 exit终止 wait等待 🔥个人主页:大白的编程日记 🔥专栏:Linux学习笔记 文章目录 【Linux学习笔记】进程的fork创建 exit终止 wait等待前言1.进程创建1.1 fork函数初识1.2fork函数返回值1.3写时拷…...
一种专用车辆智能配电模块的设计解析:技术革新与未来展望
关键词:智能配电模块、STM32、CAN总线、电子开关、新能源汽车 引言:传统配电系统的痛点与智能化转型 传统配电系统依赖继电器和保险丝,存在体积大、寿命短、智能化低等缺陷(如图1)。而新能源汽车和无人驾驶技术对配电…...
第TR5周:Transformer实战:文本分类
🍨 本文为🔗365天深度学习训练营中的学习记录博客 🍖 原作者:K同学啊 1.准备工作 1.1.加载数据 import torch import torch.nn as nn import torchvision import os,PIL,warnings import pandas as pd warnings.filterwarnings…...