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

基于蓝耘MaaS平台进行api调用创建本地智能ai

关于MaaS平台

MaaS 平台即 “模型即服务”(Model as a Service)平台,是一种依托云计算的人工智能服务模式。
模型即服务(MaaS)平台面向企业开发者、创业者及非技术背景用户,提供开箱即用的热门AI模型服务,支持零代码体验、API快速集成与灵活计费,降低AI应用开发门槛,加速业务创新。允许用户通过API接口或其他方式访问和使用预先训练好的机器学习模型,无需自己从头开始训练模型,使得即使没有深厚机器学习背景的用户也能享受到高水平的AI技术支持。

关于具体介绍,可以看看这里蓝耘元生代AIDC OS 文档中心,介绍的还是蛮详细的

image.png
那么这个时候就有人想问,我们能通过该平台做什么呢?
对于我来说,调用api来进行本地的兴趣开发操作,下面我就教大家如果使用这个平台进行api的调用操作

调用蓝耘内api进行本地机器人的搭建操作

调用之前我们先进行平台的注册操作,输入你的正确信息就能登录到平台,开启的数据漫游了
https://cloud.lanyun.net//#/registerPage?promoterCode=0131
image.png

调用api,我们需要正确的调用代码,在文档中有详细的介绍
这里我们直接使用Python进行调用操作
image.png

from openai import OpenAI# 构造 client
client = OpenAI(api_key="sk-xxxxxxxxxxx",  # APIKeybase_url="https://maas-api.lanyun.net/v1",
)
# 流式
stream = True
# 请求
chat_completion = client.chat.completions.create(model="/maas/deepseek-ai/DeepSeek-R1",messages=[{"role": "user","content": "你是谁",}],stream=stream,
)
if stream:for chunk in chat_completion:# 打印思维链内容if hasattr(chunk.choices[0].delta, 'reasoning_content'):print(f"{chunk.choices[0].delta.reasoning_content}", end="")# 打印模型最终返回的contentif hasattr(chunk.choices[0].delta, 'content'):if chunk.choices[0].delta.content != None and len(chunk.choices[0].delta.content) != 0:print(chunk.choices[0].delta.content, end="")
else:result = chat_completion.choices[0].message.content

这里我们不难发现,调用api的话我们需要改变两个变量,一个是api_key,一个是model
image.png
点击模型广场,我们进行API_KEY的创建操作
image.png
创建好了之后就是这个样子,我们是可以进行点击复制操作的
image.png
然后将这个API KEY填写到上面调用代码的api_key里面就行了
model的话就直接选择你想带调用的模型,这里我们可以发现模型广场可以带哦用的类型还是蛮多的
model的话我们选择模型下方的名字就行了
image.png
假如说我们要选择DeepSeek-R1模型的话,我们就定义model="/maas/deepseek-ai/DeepSeek-R1"就行了
并且每个模型里面还有具体的模型介绍,tokens扣费啥的
image.png
这个时候我就得夸夸蓝耘平台了,我们在免费资源包这里发现QwQ-32B、DeepSeek-V3、DeepSeek-R1这三种模型都有大量的tokens额度,根本用不完,而且模型都是比较新的,随便调用
image.png
知道了这两个参数如何填写了,那么我们就可以开始调用了,但是在调用之前我们先在平台上使用下,感受下效果
在左侧的文本模型这里,选择最新的v3模型
image.png
看起来效果还是蛮不错的
image.png
我们这里还是可以进行用量统计的,以线性图展示在我们面前
image.png

做一个ai对话可视化界面,和chatbox差不多的效果,能进行基本的对话就行了
image.png
我们这里直接和trae进行对话,让他帮我生成效果
image.png
image.png
还是挺智能的
image.png
image.png
经过一系列的调用,最后确实能在本地进行一个ai对话机器人,这个程序的可改进点有很多,比如可以让用户和ai的对话隔开一点,并且图形化UI界面再好看点儿,加点机器人切换的功能(切换不同厂家的api)
image.png
实例代码如下:

import sysfrom PyQt6.QtWidgets import QApplication, QMainWindow, QWidget, QVBoxLayout, QTextEdit, QPushButton, QHBoxLayout, QLabel, QFrame, QProgressBarfrom PyQt6.QtCore import Qt, QThread, pyqtSignal, QSize, QTimerfrom PyQt6.QtGui import QClipboard, QMoviefrom openai import OpenAIclass ChatWorker(QThread):response_received = pyqtSignal(str)reasoning_received = pyqtSignal(str)error_occurred = pyqtSignal(str)def __init__(self, api_key, base_url, messages):super().__init__()self.api_key = api_keyself.base_url = base_urlself.messages = messagesdef run(self):try:client = OpenAI(api_key=self.api_key,base_url=self.base_url)chat_completion = client.chat.completions.create(model="/maas/deepseek-ai/DeepSeek-V3",messages=self.messages,stream=True)for chunk in chat_completion:if hasattr(chunk.choices[0].delta, 'reasoning_content'):self.reasoning_received.emit(chunk.choices[0].delta.reasoning_content)if hasattr(chunk.choices[0].delta, 'content'):if chunk.choices[0].delta.content:self.response_received.emit(chunk.choices[0].delta.content)except Exception as e:self.error_occurred.emit(str(e))class ChatWindow(QMainWindow):def __init__(self):super().__init__()self.is_sending = Falseself.initUI()def initUI(self):self.setWindowTitle('AI对话界面')self.setGeometry(100, 100, 800, 600)# 设置主窗口样式self.setStyleSheet("""QMainWindow {background-color: #2b2b2b;}""")# 创建主窗口部件和布局central_widget = QWidget()self.setCentralWidget(central_widget)main_layout = QVBoxLayout(central_widget)main_layout.setSpacing(15)main_layout.setContentsMargins(20, 20, 20, 20)# 创建滚动区域用于显示对话历史self.chat_history = QTextEdit()self.chat_history.setReadOnly(True)self.chat_history.setStyleSheet("""QTextEdit {background-color: #363636;border: 1px solid #404040;border-radius: 10px;padding: 15px;color: #ffffff;}""")main_layout.addWidget(self.chat_history, stretch=2)# 思维链显示区域self.reasoning_display = QTextEdit()self.reasoning_display.setReadOnly(True)self.reasoning_display.setStyleSheet("""QTextEdit {background-color: #323232;border: 1px solid #404040;border-radius: 10px;padding: 15px;color: #b4b4b4;font-size: 13px;}""")main_layout.addWidget(self.reasoning_display, stretch=1)# 输入区域input_layout = QHBoxLayout()input_layout.setSpacing(10)self.input_field = QTextEdit()self.input_field.setMaximumHeight(100)self.input_field.setStyleSheet("""QTextEdit {background-color: #363636;border: 1px solid #404040;border-radius: 8px;padding: 8px;color: #ffffff;}""")input_layout.addWidget(self.input_field)# 发送按钮和状态指示器布局send_status_layout = QHBoxLayout()send_status_layout.setSpacing(5)# 发送按钮self.send_button = QPushButton('发送')self.send_button.setStyleSheet("""QPushButton {background-color: #4a9eff;border: none;border-radius: 8px;padding: 8px 20px;color: white;font-weight: bold;}QPushButton:hover {background-color: #3b8be6;}QPushButton:pressed {background-color: #3178cc;}QPushButton:disabled {background-color: #666666;}""")self.send_button.clicked.connect(self.send_message)send_status_layout.addWidget(self.send_button)# 加载动画self.loading_label = QLabel()self.loading_movie = QMovie("loading.gif")self.loading_movie.setScaledSize(QSize(20, 20))self.loading_label.setMovie(self.loading_movie)self.loading_label.hide()send_status_layout.addWidget(self.loading_label)input_layout.addLayout(send_status_layout)main_layout.addLayout(input_layout)# OpenAI API配置self.api_key = "sk-3bjomhlbnrnx2utxzi7yw26i62cvnlx6bnecxv3gchq75o2y"self.base_url = "https://maas-api.lanyun.net/v1"def send_message(self):if self.is_sending:returnuser_message = self.input_field.toPlainText().strip()if not user_message:return# 设置发送状态self.is_sending = Trueself.send_button.setEnabled(False)self.loading_label.show()self.loading_movie.start()# 清空输入框和思维链显示self.input_field.clear()self.reasoning_display.clear()# 显示用户消息message_html = self.create_message_bubble(user_message, is_user=True)cursor = self.chat_history.textCursor()cursor.movePosition(cursor.MoveOperation.End)cursor.insertHtml(message_html)# 准备消息messages = [{"role": "user","content": user_message}]# 创建并启动工作线程self.worker = ChatWorker(self.api_key, self.base_url, messages)self.worker.response_received.connect(self.handle_response)self.worker.reasoning_received.connect(self.handle_reasoning)self.worker.error_occurred.connect(self.handle_error)self.worker.start()def create_message_bubble(self, text, is_user=True):# 创建消息容器的HTMLbackground_color = '#404040' if is_user else '#1a5fb4'alignment = 'right' if is_user else 'left'# 构建消息HTMLhtml = f'''<div style="text-align: {alignment}; margin: 25px 0;"><div style="position: relative;display: inline-block;max-width: 80%;background-color: {background_color};border-radius: 15px;padding: 15px;color: #ffffff;font-size: 14px;word-wrap: break-word;text-align: left;box-shadow: 0 2px 5px rgba(0,0,0,0.2);">{text}</div>'''# 为AI消息添加复制按钮if not is_user:html += f'''<div style="text-align: right; margin-top: 10px;"><button onclick="document.execCommand('copy')" style="background-color: #2b2b2b;border: 1px solid #404040;border-radius: 6px;color: #b4b4b4;padding: 6px 12px;cursor: pointer;font-size: 12px;transition: all 0.2s ease;">复制</button></div>'''html += '</div>'return htmldef handle_response(self, response):# 如果是第一次收到响应,初始化累积变量和计时器if not hasattr(self, 'accumulated_response'):self.accumulated_response = ''self.response_timer = QTimer()self.response_timer.setSingleShot(True)self.response_timer.timeout.connect(self.display_accumulated_response)# 累积响应内容self.accumulated_response += response# 重置计时器(每收到新内容就重置等待时间)self.response_timer.start(1000)  # 1秒后如果没有新内容,则显示累积的内容def display_accumulated_response(self):if not self.accumulated_response.strip():return# 创建并插入AI回复气泡message_html = self.create_message_bubble(self.accumulated_response, is_user=False)cursor = self.chat_history.textCursor()cursor.movePosition(cursor.MoveOperation.End)cursor.insertHtml(message_html)# 滚动到底部self.chat_history.verticalScrollBar().setValue(self.chat_history.verticalScrollBar().maximum())# 重置累积变量和发送状态self.accumulated_response = ''self.is_sending = Falseself.send_button.setEnabled(True)self.loading_label.hide()self.loading_movie.stop()def handle_reasoning(self, reasoning):self.reasoning_display.insertPlainText(reasoning)def handle_error(self, error_message):error_html = f'<div style="color: #ff6b6b; padding: 10px; background-color: #2c2c2c; border-radius: 5px; margin: 5px;">错误: {error_message}</div>'self.chat_history.append(error_html)# 重置发送状态self.is_sending = Falseself.send_button.setEnabled(True)self.loading_label.hide()self.loading_movie.stop()def main():app = QApplication(sys.argv)window = ChatWindow()window.show()sys.exit(app.exec())if __name__ == '__main__':main()

总结

针对蓝耘的api调用操作,确实很方便,因为我们只需要改变两个变量就可以实现本地的调用操作,相较于之前使用其他平台的api,没有那么复杂的流程和文档,一眼就能看明白怎么回事,这个相应的速度也是相当的快的

用户无需深入钻研复杂的底层算法和模型细节,仅需按照 API 文档说明,进行简单的接口调用操作,就能利用平台强大的 AI 技术。

并且蓝耘平台的 API 支持多平台使用,无论是常见的 Windows、Linux、macOS 操作系统,还是移动端的 iOS 和 Android 系统,开发者都能顺利集成平台的 AI 服务

是否有我说的这么厉害呢?感兴趣的同学赶紧来试试吧

https://cloud.lanyun.net//#/registerPage?promoterCode=0131

相关文章:

基于蓝耘MaaS平台进行api调用创建本地智能ai

关于MaaS平台 MaaS 平台即 “模型即服务”&#xff08;Model as a Service&#xff09;平台&#xff0c;是一种依托云计算的人工智能服务模式。 模型即服务&#xff08;MaaS&#xff09;平台面向企业开发者、创业者及非技术背景用户&#xff0c;提供开箱即用的热门AI模型服务&…...

【Luogu】动态规划七

P1566 加等式 - 洛谷 思路&#xff1a; 其实这道题就是一个纸老虎&#xff0c;说这么多&#xff0c;其实最后就是问所有 a[i] 的组成方法之和有多少种 那么显然的一个dp就是 dp[j] dp[j - a[i]] 然后这题就结束了&#xff0c;就是这么简单&#xff0c;最后记得减去 n&…...

Kotlin 常见问题

以下从基础、中级、高级三个难度等级为你提供 Kotlin 面试题及参考答案&#xff1a; 基础难度 1. Kotlin 中 val 和 var 的区别是什么&#xff1f; 答案要点&#xff1a;val 用于声明不可变变量&#xff0c;类似于 Java 中的 final 变量&#xff0c;一旦赋值后就不能再重新赋…...

应急演练考试排查-DC01

DC01&#xff1a;攻击者最早通过哪种方式获取了机器权限&#xff1f;&#xff08; &#xff09; A、远程登录&#xff08;RDP登录&#xff09; B、主机系统漏洞 C、软件服务漏洞 D、钓鱼 E、物理访问 F、内网横向手段 G、低权限账户提权 H、未获取到主机权限 DC01&…...

Spring MVC 中解决中文乱码问题

在 Spring MVC 中解决中文乱码问题&#xff0c;需要从 请求参数编码 和 响应内容编码 两方面入手。以下是完整的解决方案&#xff1a; 一、解决请求参数中文乱码 1. POST 请求编码&#xff08;表单提交&#xff09; 配置 CharacterEncodingFilter 在 web.xml 中添加 Spring 提…...

排序算法详解笔记(二)

归并排序 #include <vector> #include <iostream> #include <algorithm> // For std::inplace_merge in optimization// Helper function to merge two sorted subarrays void merge(std::vector<int>& arr, int left, int mid, int right) {int …...

Spark GraphX 机器学习:图计算

引言 在数字化时代&#xff0c;图数据&#xff08;Graph Data&#xff09;的价值日益凸显&#xff1a;社交网络中的用户关系、电商平台的商品关联、知识图谱的实体链接……这些以“节点&#xff08;Vertex&#xff09;”和“边&#xff08;Edge&#xff09;”为核心的非结构化…...

claude 3.7,极为均衡的“全能型战士”大模型,国内直接使用

文章目录 零、前言一、操作指南操作指导 二、小球弹跳三、生成 Mandelbrot set 集四、文本总结能力五、智力推理题六、感受 零、前言 Claude 3.7 Sonnet&#xff08;下面简称 Claude 3.7&#xff09;由 Anthropic 发布&#xff0c;“全球首个混合推理模型”的 AI 大模型&#x…...

机器学习-入门-决策树(1)

机器学习-入门-决策树(1) 4.1决策树的基本流程 决策树基于“树”结构进行决策 每个“内部结点”对应于某个属性上的“测试”(test)每个分支对应于该测试的一种可能结果&#xff08;即该属性的某个取值&#xff09;每个“叶结点”对应于一个“预测结果” 学习过程&#xff1…...

机器学习实操 第一部分 机器学习基础 第6章 决策树

机器学习实操 第一部分 机器学习基础 第6章 决策树 内容概要 第6章深入介绍了决策树&#xff0c;这是一种功能强大的机器学习算法&#xff0c;能够处理分类、回归以及多输出任务。决策树通过递归地分割数据集来构建模型&#xff0c;具有易于解释和可视化的特点。本章详细讲解…...

Python实例题:ebay在线拍卖数据分析

目录 Python实例题 题目 实现思路 代码实现 代码解释 read_auction_data 函数&#xff1a; clean_auction_data 函数&#xff1a; exploratory_analysis 函数&#xff1a; visualize_auction_data 函数&#xff1a; 主程序&#xff1a; 运行思路 注意事项 Python实…...

算法题(137):丢手绢

审题&#xff1a; 本题需要我们找到距离最远的两个孩子之间的距离&#xff0c;并打印 思路&#xff1a; 方法一&#xff1a;暴力枚举 我们可以找到每个孩子的距离其他孩子的最远距离&#xff0c;然后维护一个maxdis变量得到所有孩子距离其他孩子最远距离的最大值。 而距离分为顺…...

2025年具身智能科技研报

引言 本报告系统梳理了2025年具身智能领域的最新进展&#xff0c;基于国内外权威新闻源与行业研究报告&#xff0c;通过数据可视化与深度分析相结合的方式&#xff0c;呈现该领域多维发展态势。从技术突破层面看&#xff0c;多模态大模型的突破性进展为具身智能注入新动能&…...

TCL科技2025一季度归母净利润10.1亿,半导体显示业务业绩创新高

4月29日&#xff0c;TCL科技&#xff08;000100&#xff09;披露2024年年报及2025年一季报。2024全年&#xff0c;TCL科技实现营业收入1648亿元&#xff0c;归母净利润15.6亿元&#xff1b;实现经营现金流净额295亿元&#xff0c;同比增长16.6%。2025年一季度&#xff0c;TCL科…...

阿里云 CentOS YUM 源配置指南

阿里云 CentOS YUM 源配置指南 在使用 CentOS 7 时&#xff0c;由于 CentOS 官方源停止维护等原因&#xff0c;yum install 命令可能会报错 “Cannot find a valid baseurl for repo: centos-sclo-rh/x86_64”。以下是通过更换阿里云源解决该问题的详细步骤。 一、备份原有配…...

阿里云 OpenManus 实战:高效AI协作体系

阿里云 OpenManus 实战&#xff1a;高效AI协作体系 写在最前面初体验&#xff1a;快速部署&#xff0c;开箱即用 真实案例分享&#xff1a;从单体开发到智能良好提示词过程展示第一步&#xff1a;为亚马逊美国站生成商品描述第二步&#xff1a;为eBay全球站生成商品描述结果分析…...

阿里云服务迁移实战: 05-OSS迁移

概述 Bucket 复制分为两种&#xff0c;同区域复制和跨区域复制 同账号复制比较简单&#xff0c;根据提示填写信息即可&#xff0c;本文主要介绍跨账号复制。 同区域复制 授权角色选择 “AliyunOSSRole”, 创建方法见 “跨区域复制”。然后点击确定即可。 跨区域复制 假设我…...

Vue高级特性实战:自定义指令、插槽与路由全解析

一、自定义指令 1.如何自定义指令 ⑴.全局注册语法 通过 Vue.directive 方法注册&#xff0c;语法格式为&#xff1a; Vue.directive(指令名, {// 钩子函数&#xff0c;元素插入父节点时触发&#xff08;仅保证父节点存在&#xff0c;不一定已插入文档&#xff09;inserted(…...

Python入门:流程控制练习

本文将介绍Python中流程控制的基础知识&#xff0c;包括条件判断和循环结构&#xff0c;并提供多个实用示例帮助初学者快速掌握这些概念。所有代码都使用基础语法&#xff0c;非常适合Python新手学习。 1. 简单条件判断&#xff1a; 编写一个程序&#xff0c;要求用户输入一个…...

Unity PBR基础知识

PBR原理 基于物理的渲染&#xff08;Physically Based Rendering&#xff0c;PBR&#xff09;是指使用基于物理原理和微平面理论建模的着色/光照模型&#xff0c;以及使用从现实中测量的表面参数来准确表示真实世界材质的渲染理念。 PBR基础理念 微平面理论&#xff08;Micr…...

智慧交警系统架构设计方案

一、引言&#xff1a;智慧交警为何成为城市治理的刚需&#xff1f; 当前&#xff0c;中国城市化进程加速&#xff0c;汽车保有量激增&#xff0c;交通拥堵、事故频发、执法效率不足等问题日益突出。传统交通管理依赖人力巡查与分散系统&#xff0c;已难以应对复杂需求。智慧交…...

NOC科普一

拓扑结构 NoC里Router之间的link链路连接可以定义成不同的结构以改变通信测量和简化片上通信结构。 &#xff08;a&#xff09;Ring&#xff1a;环形&#xff0c;每个router都有2个相邻节点&#xff0c;虽然部署和故障排除相对容易&#xff0c;但主要缺点是其通信的距离也即环…...

Linux CentOS 7 安装Apache 部署html页面

*、使用yum包管理器安装Apache。运行以下命令&#xff1a; sudo yum install httpd *、启动Apache服务 sudo systemctl start httpd *、设置Apache服务开机自启 sudo systemctl enable httpd *、验证Apache是否运行 sudo systemctl status httpd 或者&#xff0c;通过浏…...

人工智能在医疗行业的应用和发展前景

人工智能在医疗行业的应用和发展前景 引言 在科技日新月异的今天,人工智能(Artificial Intelligence,AI)已然成为全球最具潜力与影响力的技术之一。医疗行业,作为关乎人类健康与生命的关键领域,正迅速成为人工智能应用的热门阵地。人工智能在医疗领域的应用,不仅为解决…...

vue3+Nest.js项目 部署阿里云

可以先参考之前的vue3express部署的文章 vue3viteexpressmongoDB上线(新手向)_vue3 vite express-CSDN博客 区别在于express和数据库 前端前往上面文章查看 1.nest.js部署 首先&#xff0c;把nest.js中相关的文件打包 除去依赖&#xff08;node_modules&#xff09;上传到服…...

phpstudy修改Apache端口号

1. 修改Listen.conf文件 本地phpstudy安装目录&#xff1a; 2.其他问题 ① 修改httpd.conf不起作用 ② 直接通过控制面板配置好像有延迟缓存...

JSON-RPC 2.0 规范中文版——无状态轻量级远程过程调用协议

前言 JSON-RPC是一种简单、轻量且无状态的远程过程调用&#xff08;RPC&#xff09;协议&#xff0c;它允许不同系统通过标准化的数据格式进行通信。自2010年由JSON-RPC工作组发布以来&#xff0c;已成为众多应用中实现远程交互的基础协议之一。本规范主要表达了JSON-RPC 2.0版…...

DeepSeek+Dify之七借助API和Trae完成demo

DeepSeek+Dify之六通过API调用工作流 文章目录 背景准备资料1、借助Trae来创建demo2、前后端主要代码3、测试demo4、完整项目背景 在软件开发与项目实践领域,常常需要借助各种工具与技术来快速搭建可运行的示例项目,以验证思路、展示功能或进行技术探索。本文聚焦于借助 Tra…...

C++ 红黑树

上一节我介绍了二叉搜索树家族的AVL树&#xff0c;这里我们来介绍二叉搜索树家族的另一个成员&#xff0c;也是使用最广泛的成员。 1.AVL树与红黑树的区别 平衡性质 AVL 树&#xff1a;是严格的平衡二叉树&#xff0c;要求任意节点的左右子树高度差的绝对值不超过 1&#xff…...

学习海康VisionMaster之线圆测量

一&#xff1a;进一步学习了 今天学习下VisionMaster中的线圆测量&#xff1a;核心就是坐标点到直线的距离量测 1&#xff1a;什么是线圆测量&#xff1f; 工业自动化中很常见的应用尺寸测量&#xff0c;需要量测一个零件的外形尺寸&#xff0c;其中一项如果是需要测量圆心到直…...

Uniapp:置顶

目录 一、出现场景二、效果展示三、具体使用一、出现场景 在项目的开发过程中,我们经常会用到置顶的功能,比如说从页面的最下方滑动到最上面太慢了,这个时候我们就可以使用置顶功能。 二、效果展示 三、具体使用 参数名类型必填说明scrollTopNumber否滚动到页面的目标位置…...

UDP数据报和TCP流套接字编程

文章目录 UDP数据报套接字编程1.DatagramSocket类2.DatagramPacket类3. InetSocketAddress类构建服务端和客户端 TCP流套接字编程1. ServerSocket类2.Socket类构建服务端和客户端 扩展对话形式简易的字典多线程实现线程池实现 UDP数据报套接字编程 1.DatagramSocket类 Datagr…...

某建筑石料用灰岩矿自动化监测

1. 项目简介 某建材有限公司成立于2012年&#xff0c;是一家集矿山开采、石料生产及销售为一体的建筑材料生产企业&#xff0c;拥有两条年产500万吨的环保型精品骨料生产线&#xff0c;各类工程机械 30 多台套&#xff0c;运输车辆50多辆。公司坚持生态优先&#xff0c;以高质…...

C++11 的编译器支持

C11 主要功能特性一览 特性描述提案GCCClangMSVCApple ClangEDG eccpIntel CNvidia HPC C (ex PGI)*Nvidia nvccCrayEmbarcadero C BuilderIBM Open XL C for AIXIBM Open XL C for z/OSIBM XL CSun/Oracle CHP aCCDigital Mars C核心功能右值引用 (T&&)支持移动语义和…...

20250429 垂直地表发射激光测量偏转可以验证相对性原理吗

垂直地表发射激光测量偏转可以验证相对性原理吗 垂直地表发射激光测量偏转可以在一定条件下用于检验广义相对论中的等效原理和引力对光传播的影响&#xff0c;但要说直接验证整个相对性原理&#xff08;狭义广义&#xff09;是不准确的。我们可以逐步分析这个问题&#xff1a;…...

Makefile 在 ARM MCU 开发中的编译与链接参数详解与实践

内容大纲 引言 一、预处理与宏定义 头文件搜索路径:-I 宏定义:-D 二、编译器选项(CFLAGS) 架构与指令集:-mcpu、-mthumb 优化与调试:-Os、-O2、-g 警告与错误:-Wall、-Werror 代码剥离:-ffunction-sections、-fdata-sections 其他常用选项 三、链接器选项(LDFLAGS) 链…...

AimRT 从零到一:官方示例精讲 —— 四、logger示例.md

logger示例 官方仓库&#xff1a;logger 配置文件(configuration_logger.yaml​) 依据官方示例项目结构自行编写YAML配置文件&#xff1a; # 基础信息 base_info:project_name: Logger # 项目名称build_mode_tags: ["EXAMPLE", "SIMULATION", "TE…...

mybatis传递多个不同类型的参数到mapper xml文件

在业务中查询某张表时需要设置多个查询条件&#xff0c;并且还要根据id列表进行权限过滤&#xff0c;这时推荐采用Map<String, Object>作为参数进行查询&#xff0c;因为&#xff1a;Object可以设置成不同的类型&#xff0c;比如&#xff1a;List<Integer> ids&…...

信创开发中的数据库详解:国产替代背景下的技术生态与实践指南

&#x1f9d1; 博主简介&#xff1a;CSDN博客专家、CSDN平台优质创作者&#xff0c;高级开发工程师&#xff0c;数学专业&#xff0c;10年以上C/C, C#, Java等多种编程语言开发经验&#xff0c;拥有高级工程师证书&#xff1b;擅长C/C、C#等开发语言&#xff0c;熟悉Java常用开…...

【Linux】第十三章 访问Linux文件系统

目录 1. 存储设备是什么&#xff1f;怎么理解分区和格式化&#xff1f; 2. 文件系统是什么&#xff1f; 3. 挂载是什么&#xff1f;挂载点是什么&#xff1f; 4. 怎么理解块设备&#xff1f; 5. 在SATA附加存储中&#xff0c;第一磁盘上的第一个分区和第二磁盘的第二个分区…...

多态与虚函数

在 C 中&#xff0c;virtual 关键字用于实现多态性&#xff08;Polymorphism&#xff09;&#xff0c;这是面向对象编程&#xff08;OOPP&#xff09;的核心特性之一。多态性允许你编写通用的代码&#xff0c;该代码可以操作不同类型的对象&#xff0c;而这些对象可以有不同的内…...

Spring Boot - 配置管理与自动化配置进阶

Spring Boot 的配置管理和自动化配置是其核心特性之一&#xff0c;能够显著提升开发效率和应用灵活性。本文将深入探讨以下内容&#xff1a; 1、配置管理&#xff1a;多环境配置与优先级解析。 2、自动化配置&#xff1a;自定义 Spring Boot Starter 与 spring.factories 扩展…...

第六章 QT基础:7、Qt中多线程的使用

在进行桌面应用程序开发时&#xff0c;假设应用程序需要处理比较复杂的逻辑&#xff0c;如果只有一个线程去处理&#xff0c;就会导致窗口卡顿&#xff0c;无法处理用户的相关操作。 这种情况下&#xff0c;需要使用多线程&#xff1a; 主线程处理窗口事件和控件更新子线程进…...

前端Vue3 + 后端Spring Boot,前端取消请求后端处理逻辑分析

在 Vue3 Spring Boot 的技术栈下&#xff0c;前端取消请求后&#xff0c;后端是否继续执行业务逻辑的答案仍然是 取决于请求处理的阶段 和 Spring Boot 的实现方式。以下是结合具体技术的详细分析&#xff1a; 1. 请求未到达 Spring Boot 场景&#xff1a;前端通过 AbortContr…...

ShaderToy学习笔记 05.3D旋转

1. 3D旋转 1.1. 汇制立方体 由于立方体没有旋转&#xff0c;所以正对着看过去时&#xff0c;看起来是正方形的&#xff0c;所以需要旋转一下&#xff0c;才能看到立方体的样子。 常见几何体的SDF BOX 的SDF为 float sdBox( vec3 p, vec3 b ) {vec3 q abs(p) - b;return len…...

编程日志4.24

栈的链表基础表示结构 #include<iostream> #include<stdexcept> using namespace std; //模板声明&#xff0c;表明Stack类是一个通用的模板&#xff0c;可以用于存储任何类型的元素T template<typename T> //栈的声明 //Stack类的声明&#xff0c;表示一…...

通信设备制造数字化转型中的创新模式与实践探索

在数字化浪潮下&#xff0c;通信设备制造企业积极探索创新模式&#xff0c;推动数字化转型&#xff0c;以提升竞争力和适应市场变化。 在生产模式创新方面&#xff0c;企业引入工业互联网平台&#xff0c;实现设备互联互通与生产过程智能化监控。通过在生产设备上安装传感器&a…...

同一个路由器接口eth0和ppp0什么不同?

答案摘自 百度知道&#xff0c; eth0是以太网接口&#xff0c;是表示以太网连接的物理接口&#xff0c;路由器可能会有不止一个以太网接口&#xff0c;因此可能会eth0&#xff0c;eht1之类的。 ppp0是经以太网接口PPP拨号时创建的链路接口&#xff0c;用以建PPP拨号连接的&am…...

零训练成本优化LLM: 11种LLM权重合并策略原理与MergeKit实战配置

随着大语言模型的快速发展&#xff0c;如何在不消耗大量计算资源的情况下优化模型性能成为业界关注焦点。模型权重合并技术提供了一种零训练成本的高效解决方案&#xff0c;能够智能整合多个专业微调模型的优势&#xff0c;无需额外训练即可显著提升性能表现。本文系统剖析11种…...

基于tabula对pdf中多个excel进行识别并转换成word中的优化(五)

优化地方&#xff1a;处理合并的单元格内容。 1、修改为stream"complex" 2、增加换行符f"{table_data[i - 1][j]}\n{table_data[i][j]}".strip() 一、pdf中excel样例 二、完整代码 import tabula import numpy as np from docx import Document from docx…...