项目介绍
随着人工智能技术的飞速发展,聊天机器人在多个领域得到了广泛应用,如客户服务、教育辅导、娱乐互动等。然而,现有的许多聊天机器人依赖于云端服务,这不仅可能导致用户数据隐私泄露,还可能因网络延迟影响用户体验。因此,开发一款本地部署的聊天机器人显得尤为重要。本地聊天机器人能够在用户本地环境中运行,确保数据的安全性和对话的实时性,同时也能根据用户的个性化需求进行定制和优化。
项目技术架构
后端模型 :利用 Ollama 平台的 Qwen 模型,该模型具备出色的自然语言处理能力,能够理解和生成自然语言文本,为聊天机器人提供核心的对话处理功能。
前端界面 :采用 Streamlit 框架搭建用户界面,Streamlit 是一个简单易用的 Python 库,能够快速创建美观、交互式的 Web 应用,使用户能够通过网页与聊天机器人进行实时对话。
对话交互 :用户可以通过 Streamlit 界面输入文本,聊天机器人基于 Qwen 模型对输入内容进行理解和处理,生成相应的回复并展示在界面上,实现流畅的对话交互。
模型调用 :后端服务负责将用户输入传递给 Qwen 模型,并获取模型生成的回复,然后将回复内容返回给前端界面进行展示,确保对话的实时性和准确性。
界面展示 :Streamlit 界面提供简洁明了的布局,包括输入框、发送按钮和对话展示区域,用户可以方便地输入问题并查看机器人的回答,提升用户体验。
项目开发环境
操作系统 :支持主流操作系统,如 Windows、macOS 和 Linux。
依赖软件 :需要安装 Python 环境以及 Ollama 平台和 Streamlit 库。
硬件要求 :推荐配置较高的处理器和足够的内存,以确保模型的高效运行和良好的用户体验。
【熟练】Ollama模块实现
学习目标
能够使用Python调用本地部署大模型API,完成聊天对话功能
Qwen模型PythonAPI实现文本扩写
需求:通过python调用API实现基于qwen2在0.5b数据集下实现对文本的续写,用户输入一个简短的故事开头,系统能够生成一段连贯、有趣的续写内容。
细节: 本地需要先安装下依赖包.
pip install ollama
pip install langchain -i Simple Index pip install langchain-community -i Simple Index pip install dashscope -i Simple Index
pip install streamlit==1.32.0
import ollama
response = ollama.chat(model='qwen2:0.5b',messages=[{'role': 'user', 'content': '从前有座山,山里有个庙,续写一下', },])
print(response.message.content)
print(response['message']['content'])
Qwen模型PythonAPI实现文本问答
需求:构建一个简单的命令行交互程序,用户可以通过输入问题与AI模型进行对话。该程序将使用qwen2:0.5b语言模型。用户可以通过命令行输入问题,程序将调用AI模型生成回答,并将结果输出到终端。
import ollama
# 3. 定义一个循环
while True:
# 4. 获取prompt提示词
prompt = input("请输入您的问题:")
response = ollama.chat(model='qwen2:0.5b',
messages=[{'role': 'user', 'content': prompt, }, ])
# 5. 调用模型,回答问题
result = response['message']['content']
# 6. 打印回答
print(result)
Qwen模型PythonAPI实现编程代码
需求:构建一个基于AI模型的代码生成工具,用户可以通过输入自然语言描述所需功能,AI模型将自动生成相应的Python代码。该工具旨在帮助开发者快速获取代码片段,减少手动编写代码的时间。
# 4. 获取prompt提示词
prompt = """
请为以下功能生成一段Python代码:
求两个数的最大公约数
"""
response = ollama.chat(model='qwen2:0.5b',
messages=[{'role': 'user', 'content': prompt}, ])
# 5. 调用模型,回答问题
result = response['message']['content']
# 6. 打印回答
print(result)
Qwen模型PythonAPI实现情感标签
需求:构建一个基于AI模型的用户反馈分类工具,用户可以通过输入具体的反馈内容,AI模型将自动将其归类到预设的类别中(如“价格过高”、“售后支持不足”、“产品使用体验不佳”、“其他”)。该工具旨在帮助企业快速分析用户反馈,识别主要问题,并采取相应的改进措施。
# 4. 获取prompt提示词
prompt = """
你需要对用户的反馈进行原因分类。
分类包括:价格过高、售后支持不足、产品使用体验不佳、其他。
回答格式为:分类结果:xx。
用户的问题是:性价比不高,我觉得不值这个价钱。
"""
response = ollama.chat(model='qwen2:0.5b',
messages=[{'role': 'user', 'content': prompt}, ])
# 5. 调用模型,回答问题
result = response['message']['content']
# 6. 打印回答
print(result)
实现基于Streamlit前端聊天页面开发
只用 Python
也能做出很漂亮的网站?Streamlit
说可以。
Streamlit
官方介绍:能在几分钟内把 Python
脚本变成可分享的网站。只需使用纯 Python
,无需前端经验。甚至,你只需要懂 markdown
,然后按照一定规则去做也能搞个网页出来。它还支持免费部署,感动到落泪。
官方网站:Streamlit • A faster way to build and share data apps
Streamlit安装
首先你的电脑需要有 python
环境。
有 python
环境后,使用下面这条命令就可以安装 streamlit
。
pip install streamlit==1.32.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
安装 streamlit
成功后可以使用下面这条命令看看能不能运行起来。
streamlit hello
基础语法
标题
使用 st.title()
可以设置标题内容。
st.title('Streamlit教程')
段落write
段落就是 HTML
里的
元素,在 streamlit
里使用 st.write('内容')
的方式去书写。
import streamlit as st
st.write('Hello')
使用markdown
streamlit
是支持使用 markdown
语法来写页面内容的,只需使用单引号或者双引号的方式将内容包起来,并且使用 markdown
的语法进行书写,页面就会出现对应样式的内容。
import streamlit as st
"# 1级标题"
"## 2级标题"
"### 3级标题"
"#### 4级标题"
"##### 5级标题"
"###### 6级标题"
图片
渲染图片可以使用 st.image()
方法,也可以使用 markdown
的语法。
st.image(图片地址, [图片宽度])
,其中图片宽度不是必填项。
import streamlit as st
st.image('./avatar.jpg', width=400)
表格
streamlit
有静态表格和可交互表格。表格在数据分析里属于常用组件,所以 streamlit
的表格也支持 pandas
的 DataFrame
。
静态表格 table
静态表格使用 st.table()
渲染,出来的效果就是 HTML
的 。
st.table()
支持传入字典、pandas.DataFrame
等数据。
import streamlit as st
import pandas as pd
st.write('dict字典形式的静态表格')
st.table(data={
'name': ['张三', '李四', '王五'],
'age': [18, 20, 22],
'gender': ['男', '女', '男']
})
st.write('pandas中dataframe形式的静态表格')
df = pd.DataFrame(
{
'name': ['张三', '李四', '王五'],
'age': [18, 20, 22],
'gender': ['男', '女', '男']
}
)
st.table(df)
可交互表格 dataframe
可交互表格使用 st.dataframe()
方法创建,和 st.table()
不同,st.dataframe()
创建出来的表格支持按列排序、搜索、导出等功能。
import streamlit as st
import pandas as pd
st.write('dict字典形式的可交互表格')
st.dataframe(data={
'name': ['张三', '李四', '王五'],
'age': [18, 20, 22],
'gender': ['男', '女', '男']
})
st.write('pandas中dataframe形式的可交互表格')
df = pd.DataFrame(
{
'name': ['张三', '李四', '王五'],
'age': [18, 20, 22],
'gender': ['男', '女', '男']
}
)
st.dataframe(df)
分割线
分隔线就是 HTML
里的
。在 streamlit
里使用 st.divider()
方法绘制分隔线。
import streamlit as st
st.divider()
输入框
知道怎么声明变量后,可以使用一个变量接收输入框的内容。
输入框又可以设置不同的类型,比如普通的文本输入框、密码输入框。
# 普通输入框输入框使用 st.text_input() 渲染。
name = st.text_input('请输入你的名字:')
if name:
st.write(f'你好,{name}')
☆ 密码
如果要使用密码框,可以给 st.text_input()
加多个类型 type="password"
。
import streamlit as st
pwd = st.text_input('密码是多少?', type='password')
☆ 数字输入框 number_input
数字输入框需要使用 number_input
import streamlit as st
age = st.number_input('年龄:')
st.write(f'你输入的年龄是{age}岁')
众所周知,正常表达年龄是不带小数位的,所以我们可以设置 st.number_input()
的步长为1,参数名叫 step
。
# 省略部分代码
st.number_input('年龄:', step=1)
这个步长可以根据你的需求来设置,设置完后,输入框右侧的加减号每点击一次就根据你设置的步长相应的增加或者减少。
还有一点,人年龄不可能是负数,通常也不会大于200。可以通过 min_value
和 max_value
设置最小值和最大值。同时还可以通过 value
设置默认值。
st.number_input('年龄:', value=20, min_value=0, max_value=200, step=1)
多行文本框 text_area
创建多行文本框使用的是 st.text_area()
,用法和 st.text_input()
差不多。
import streamlit as st
paragraph = st.text_area("多行内容:")
Chat Elements
# 导入 Streamlit 库,Streamlit 是一个用于快速创建数据应用的 Python 库
import streamlit as st
# 使用 st.chat_input 创建一个聊天输入框,提示用户输入问题
prompt = st.chat_input('请输入您的问题: ')
st.write(f'您的问题是: {prompt}')
# 使用 st.chat_message 创建一个用户消息容器,用于显示用户的消息
# 'user' 表示这是用户发送的消息
with st.chat_message('user'):
# 在用户消息容器中显示文本 'Hello '
st.write('Hello ')
# 使用 st.chat_message 创建一个消息容器,用于显示回复消息
message = st.chat_message('assistant')
# 在消息容器中显示文本 'Hello Human',模拟助手的回复
message.write('Hello Human')
实现基于Python调用Qwen模型API接口聊天机器人开发
需求
构建一个基于大模型的本地智能聊天机器人,利用其强大的自然语言处理和生成能力,为用户提供高效、精准、个性化的对话服务。该聊天机器人将集成先进的大规模预训练语言模型(如GPT、Qwen等),具备自然语言理解、多轮对话、情感分析、知识问答等核心功能,并可根据具体应用场景进行定制化扩展,例如客服咨询、教育辅导、娱乐互动等。
项目采用模块化设计,前端通过Streamlit等框架实现简洁易用的交互界面,后端基于Ollama等平台进行模型部署和管理,确保系统的高效性和可扩展性。项目目标是打造一个智能化、人性化的聊天机器人,提升用户体验,降低人工成本,并探索大模型技术在不同领域的创新应用。
模型调用
# 1. 导入相关包
import ollama
# 2. 定义一个函数,用于发起请求,返回结果
# def get_response(prompt):
# messages = []
# messages.append({'role': 'user', 'content': prompt, })
# response = ollama.chat(model='qwen2.5:7b', messages=messages)
# return response['message']['content']
# 3. 定义一个函数,用于发起请求,返回结果
def get_response(prompt):
# response = ollama.chat(model='qwen2:0.5b', messages=prompt[-50:])
response = ollama.chat(model='deepseek-r1:8b', messages=prompt[-50:])
return response['message']['content']
# 7. 测试,测试结束后,终止
if __name__ == '__main__':
s=input("请输入你要表达的内容")
while True:
prompt = s
result = get_response(prompt)
print(result)
前端实现
# 1. 导入相关包,如streamlit包
import streamlit as st
from langchain.memory import ConversationBufferMemory
from utils import get_response
# 3. 主界面主标题
st.title("智聊机器人")
# 5. 会话保持:用于存储会话记录
if "memory" not in st.session_state:
st.session_state['memory'] = ConversationBufferMemory()
st.session_state['messages'] = [{'role': 'assistant', 'content': '你好,我是黑马智聊机器人,有什么可以帮助你的么?'}]
# 6. 编写一个循环结构,用于打印会话记录
for message in st.session_state['messages']:
with st.chat_message(message['role']):
st.markdown(message['content'])
# 4. 创建一个聊天窗口
prompt = st.chat_input("请输入您要咨询的问题:")
# 7. 如果文本框有数据,继续向下执行
if prompt:
st.session_state['messages'].append({'role': 'user', 'content': prompt})
st.chat_message("user").markdown(prompt)
# 10. 向utils工具箱发起请求,返回响应
with st.spinner("AI小助手正在思考中..."):
content = get_response(st.session_state['messages'])
st.session_state['messages'].append({'role': 'assistant', 'content': content})
st.chat_message("assistant").markdown(content)
你可能感兴趣的:(AI,机器人,AI)
乾坤微前端框架详细使用大全
不知名靓仔
前端框架
引言乾坤微前端框架(Qiankun)是一款轻量级的微前端解决方案,它基于JavaScript的Proxy特性和WebComponents技术,提供了一套简单易用的微前端实现方案。本文将详细介绍乾坤微前端框架的安装、配置、使用方法及常见问题解答,帮助开发者快速上手乾坤微前端框架。1.乾坤简介1.1什么是乾坤?乾坤是一个轻量级的微前端框架,旨在帮助开发者轻松实现微前端架构。它通过主应用(MainApp
10.6 ChatGLM3私有数据微调实战:24小时打造高精度模型,显存直降60%
少林码僧
掌握先机!从 0 起步实战 AI 大模型微调 打造核心竞争力 chatgpt 机器学习 深度学习 人工智能 语言模型
ChatGLM3私有数据微调实战:24小时打造高精度模型,显存直降60%1.实战构造私有的微调数据集在微调大模型时,数据质量直接决定模型效果。本节将手把手教你如何构建高质量的私有微调数据集。1.1使用ChatGPT自动设计生成训练数据的Prompt核心思路:通过ChatGPT生成符合任务需求的样本数据,降低人工标注成本。步骤示例(以生成客服对话数据为例):fromlangchain.prompts
qiankun 微前端框架子应用间通信方法详解
啃火龙果的兔子
开发DEMO 前端框架
qiankun作为流行的微前端解决方案,提供了多种子应用间通信的方式。以下是全面的通信方法总结:1.基于props的通信(主应用与子应用)主应用向子应用传递数据://主应用注册子应用时传递数据registerMicroApps([{name:'subApp',entry:'//localhost:7100',container:'#subapp-container',activeRule:'/su
【云原生技术】EArorNee uoine .basanend via che sut o inoeturos y>e,xxx.aebord.yonding.xxxx:8443/v2/ failed
阿寻寻
云原生
EArorNeeuoine.basanendviachesutoinoeturosy>e,xxxx.harbor.yonding,xxxx:8443/v2/failedwithstatus:401unauthorized我已经配置了daemon.json文件,也重启了docker,在登陆的时候报错这个是为什么?x509的报错早已解决;现在出现的是HTTP401Unauthorized,含义完全不同
Mermaid 绘图指南(一)- Mermaid图表绘制语法详解与实战示例
全能骑士涛锅锅
通用技术/研究方法 Markdown Mermaid 图表绘制 流程图
Mermaid绘图指南(一)-Mermaid图表绘制语法详解与实战示例AuthorDateVersionNoteTaoWang2025-04-24V1.0Releasethedocument.文章目录Mermaid绘图指南(一)-Mermaid图表绘制语法详解与实战示例一、工具概述1.1工具简介1.2快速入门1.3图表类型支持1.4实战案例:明代皇族谱系二、饼状图开发规范2.1语法结构参数说明表2
解决更新python版本后,虚拟环境不可用的问题
Superstarimage
diffusers编程 python python 人工智能 开发语言
因为安装xformers,需要额外加装triton,而triton需要的python版本(3.10)高于我当前虚拟环境的版本(3.8),因此博主手动提升了当前虚拟环境的版本:condainstallpython=3.10结果应用该虚拟环境时,始终报如下错误:(TrainControlNet)F:\XYX\Documents\SpongeCakeInverse\AITools\the3rdparty
2.线性神经网络--Softmax回归
温柔济沧海
深度学习 神经网络 回归 人工智能
2.1从零实现Softmax回归#数据集导入importtorchimporttorchvisionfromtorchvisionimporttransformsimportmatplotlib.pyplotaspltfromtqdmimporttqdmfromtorch.utils.dataimportDataLoader#####################################
关于 栈帧变化完整流程图(函数嵌套)
shenyan~
流程图
一、什么是栈帧(StackFrame)当一个函数被调用时,会在栈上开辟一段空间,叫做栈帧。每个栈帧保存了:函数的参数返回地址(从哪里跳回来)上一个栈帧的栈底指针(保存调用者的EBP/FP)局部变量保存的一些寄存器(可选)二、函数嵌套调用例子以C为例:voidC(){intc=3;}voidB(){intb=2;C();}voidA(){inta=1;B();}intmain(){A();retur
AI 浪潮下的锚与帆:工程师文化的变与不变 | 架构师夜生活
工程师文化
目录:一、那些让程序员焦虑的"假消息"二、我们理解的工程师文化三、AI到底改变了什么四、程序员需要学什么新技能五、80后程序员vs 00后程序员六、最好的时代永远在前方引言公司食堂里,一个产品经理和一个程序员正在讨论一个让行业都焦虑的话题:"AI来了,你们程序员还有什么用?我直接对着机器说需求,它就能给我做出来,我还要你干嘛?你还要给我排期!"产品经理显得有些得意。"你对它说的话它听得懂吗?它生成
量子计算+AI芯片:光子计算如何重构神经网络硬件生态
前言前些天发现了一个巨牛的人工智能免费学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站量子计算+AI芯片:光子计算如何重构神经网络硬件生态——2025年超异构计算架构下的万亿参数模型训练革命产业拐点:英伟达BlackwellUltra发布光互连版GPU,IBM量子处理器突破512比特,光子计算商用成本降至$5/TOPS实测突破:Llama3-405B在光子-量子混合集群训练能耗下
如何解决Ubuntu服务器拉取github代码失败
徐方芳
github
使用gitclone拉取GitHub代码时出现以下错误:fatal:unabletoaccess'https://github.com/XXX':Failedtoconnecttogithub.comport443after133795ms:Connectiontimedout通过查找资料,找到解决办法,可以通过运行以下代码解决:gitconfig--global--unsethttp.proxy
AI+Web3:从自动化工具到自主经济体的范式革命
Loving_enjoy
计算机学科论文创新点 迁移学习 人工智能 机器学习
>想象你的AI助手不仅能回答问题,还能自主管理你的加密资产、参与DAO治理、在预测市场博弈,甚至为你创造持续收益——欢迎来到AI与Web3融合的新世界。传统互联网(Web2)的AI困在中心化的牢笼中:数据被垄断在科技巨头手中,算法决策如同黑箱,用户沦为被动的数据奶牛。**Web3与AI的碰撞正在打破这一枷锁**,催生出去中心化的自主智能体(AIAgent),它们拥有数字身份、加密钱包和经济决策权,
为什么让AI洗碗比写诗难百倍?清华教授揭秘具身智能鸿沟
Loving_enjoy
计算机学科论文创新点 机器学习 人工智能 facebook 课程设计
>**人类小脑数亿年进化出的运动智慧,成了AI最难破解的密码**2025年3月,一位网友困惑地发问:“我想让人工智能替我洗碗做饭洗衣服,没想到现在的AI反而在画画、写歌、搞创作……”对此,全国政协委员、中国科学院自动化研究所研究员赵晓光一针见血地指出:**“大模型没有创新能力,想让AI干体力活还要靠具身智能的发展。”**这个看似矛盾的现象背后,隐藏着人工智能发展进程中一个惊人的认知盲区。清华大学心
AI+小程序新范式:智能推荐、语音交互的场景落地全攻略
AI+小程序新范式:智能推荐、语音交互的场景落地全攻略内容摘要在AI技术席卷全球的今天,小程序与AI的结合已不再是“锦上添花”,而是企业生存的“必答题”。当用户打开一个电商小程序,系统竟能提前预判其需求;当用户对着智能音箱说一句指令,小程序即刻完成从订票到推荐餐厅的“一条龙”服务——这些场景正在成为现实。但问题随之而来:智能推荐如何避免“精准骚扰”?语音交互如何突破方言和噪音的桎梏?技术背后隐藏着
从被动检索到主动思考:Naive RAG 到 Agentic RAG 的架构演进与关键技术解析
一休哥助手
人工智能 架构 RAG
摘要随着大语言模型(LLMs)的广泛应用,检索增强生成(Retrieval-AugmentedGeneration,RAG)技术已成为解决模型知识滞后与幻觉问题的核心方案。本文深入剖析从基础NaiveRAG到新一代AgenticRAG的架构演进路径,聚焦关键技术创新点(如递归检索、自适应查询改写、工具集成、多智能体协作),并通过架构图对比与案例分析,揭示其在复杂任务处理中的范式转变。全文超过500
Fibonacci sequence 斐波那契数列解法及分析
hiqex
AL fib fibonacci
版权声明:欢迎转载,但请注明出处,若有什么不对的地方,欢迎指正,https://blog.csdn.net/wutenglong123/article/details/82764585斐波那契数列(Fibonaccisequence)斐波那契数列的性质多种多样,截至现在,人么依然没有将之研究透彻,本文就从中选取几个有趣的性质分析。定义Fib数列的定义如下:F(n)={0ifn=01ifn=1Fn−
【零基础学AI】第29讲:BERT模型实战 - 情感分析
1989
0基础学AI bert 人工智能 深度学习 神经网络 cnn python 自然语言处理
本节课你将学到BERT模型的核心原理与优势HuggingFaceTransformers库的BERT接口使用情感分析任务的完整实现流程模型微调(Fine-tuning)技巧开始之前环境要求Python3.8+需要安装的包:pipinstalltorchtransformersdatasetspandastqdmGPU推荐(可加速训练)前置知识第28讲Transformer基础基本PyTorch使用
【零基础学AI】第27讲:注意力机制(Attention) - 机器翻译实战
1989
0基础学AI 人工智能 机器翻译 自然语言处理 python tensorflow 机器学习 神经网络
本节课你将学到理解注意力机制的核心思想掌握注意力计算的数学原理实现基于注意力机制的Seq2Seq模型构建英语到法语的神经翻译系统开始之前环境要求Python3.8+需要安装的包:tensorflow==2.8.0numpy==1.21.0matplotlib==3.4.0pandas==1.3.0前置知识RNN/LSTM原理(第26讲)序列数据处理(第26讲)自然语言处理基础(第14讲)核心概念为
STM32串口DMA方式向上位机连续发送接收数据
Justinlevy
stm32 单片机 arm
目录一、DMA初步应用1、DMA含义2、DMA传输四要素3、使用区别4、DMA的应用场景5、DMA传输方式6、DMA中断二、创建项目1、STM32CubeMX创建1.1设置SYS1.2设置RCC1.3设置USART1.4DMA设置1.5时钟设置1.6文件配置2、KEIL代码配置2.1main.c文件代码2.2while循环中代码2.3编译烧录2.4运行结果三、DMA总结四、参考一、DMA初步应用1
《王者荣耀》游戏优化的AI革命:从性能提升到生态治理
AI编程员
001AI传统&编程语言 002AI编程工具汇总 003AI编程作品汇总 人工智能 笔记 学习 深度学习 游戏
目录:AI技术进化历程:使用时间轴和表格介绍“绝悟”AI从基础操作到职业水平的成长过程,以及“开悟”平台的技术外溢效应。性能优化策略:通过终端适配方案表格,分析预计算烘焙、多线程优化等技术如何解决亿级用户的设备兼容问题。游戏环境治理:列举AI接管、违规检测等机制如何应对挂机、摆烂等破坏公平性的行为。产业技术外溢:说明游戏AI如何向智能制造、自动驾驶等领域输出协作决策模型。伦理争议:探讨“超规格能力
sqlserver 将多个字段合并成一个字段
chtholl
sqlserver学习 sql 数据库 java
1.字段为竖向显示的时候在这里我们合并sqr,将id为(47,50,51)合并SELECTname=((stuff((SELECT','+CAST(a.sqrASVARCHAR)FROMformtable_main_11aWHEREa.idin(47,50,51)ORDERBYa.idFORxmlpath('')),1,1,'')))显示结果:2.字段为横向显示的时候合并在这里我们合并(reque
附上java下载excel完整实现代码
importcom.alibaba.excel.EasyExcel;importcom.alibaba.excel.ExcelWriter;importcom.alibaba.excel.write.metadata.WriteSheet;importcom.alibaba.excel.write.metadata.fill.FillConfig;importcom.qhsm.airportexp
一秒四次!高频Tick五档期货Level2分析
一秒四次!高频Tick五档期货Level2分析国内期货level2高频数据(一秒四次)下载链接:https://pan.baidu.com/s/144ewl4T0dQvrAedhLz8uJw?pwd=c33h提取码:c33h通过历史Level2一秒四次高频数据深层次分析交易可以分析出比较活跃的品种一:m2505(1)在11:12:36.158的瞬间,一笔引人注目的大单投入市场,3606份订单被安排
前端开发常见问题(从布局到性能优化)
白仑色
前端系列 前端开发 HTML CSS JavaScript 性能优化 响应式布局 跨域
前端开发作为连接用户与产品的重要桥梁,涉及HTML、CSS和JavaScript的综合运用。但在实际开发过程中,开发者常常会遇到各种“坑”,比如页面布局异常、跨域请求失败、性能瓶颈、浏览器兼容性差等问题。本文将围绕前端开发中常见的十大问题展开讲解:页面布局相关问题(盒模型、浮动、Flex布局)CSS样式冲突与继承JavaScript异步处理(Promise、async/await)跨域问题及解决方
使用 C++/Faiss 加速海量 MFCC 特征的相似性搜索
whoarethenext
c++ faiss 开发语言
使用C++/Faiss加速海量MFCC特征的相似性搜索引言在现代音频处理应用中,例如大规模声纹识别(SpeakerRecognition)、音乐信息检索(MusicInformationRetrieval)或音频事件检测(AudioEventDetection),我们通常需要从海量的音频库中快速找到与给定查询音频最相似的样本。这个过程的核心技术是对音频内容进行特征提取和高效的相似性搜索。MFCC(
LangChain核心组件全解析
北辰alk
AI langchain
文章目录一、核心架构组件1.模型I/O(ModelI/O)2.检索(Retrieval)3.记忆(Memory)4.链(Chains)5.代理(Agents)二、关键支持组件1.回调系统(Callbacks)2.文档加载器(DocumentLoaders)3.文本分割器(TextSplitters)4.向量存储(VectorStores)三、高级架构组件1.工具集成(Tools)2.工作流(Wor
AI LLM架构与原理 - 预训练模型深度解析
陈乔布斯
AI 人工智能 大模型 人工智能 架构 机器学习 深度学习 大模型 Python AI
一、引言在人工智能领域,大型语言模型(LLM)的发展日新月异,预训练模型作为LLM的核心技术,为模型的强大性能奠定了基础。预训练模型通过在大规模无标注数据上进行学习,能够捕捉语言的通用模式和语义信息,从而在各种自然语言处理任务中展现出卓越的能力。本文将深入探讨AILLM架构与原理中预训练模型的方法论和技术,结合图解、代码解析和实际案例,为读者呈现一个全面且易懂的预训练模型图景。二、预训练模型的基本
uniapp的光标跟随和打字机效果
打不着的大喇叭
uniapp uni-app javascript 前端
1、准备好容器文字的显示textRef,以及光标的显示,使用transform-translate对光标进行移动到文字后面2、准备样式样式,你可以自定义,不必安装我的,主要是光标的闪烁动画.container{position:relative;width:100%;height:100vh;box-sizing:border-box;padding:30rpx20rpx;.cursor{posi
Claude Code 深夜也要加班?这个神器让 AI 自动续命!
terryso
AI编程 AI编程
你有没有遇到过这种情况?晚上熬夜用ClaudeCode写代码,正写到关键时刻,突然弹出:"Claudeusagelimitreached.恢复时间:凌晨3点"这时候你可能已经困得睁不开眼,但又舍不得放弃手头的工作进度…解决方案来了!今天给大家推荐一个开源神器:ClaudeAutoResume,让你的ClaudeCode可以"自动续命"!它是怎么工作的?智能检测:自动监控Claude使用限制倒计时等
【AI论文】GLM-4.1V-思考:借助可扩展强化学习实现通用多模态推理
东临碣石82
人工智能
摘要:我们推出GLM-4.1V-Thinking这一视觉语言模型(VLM),该模型旨在推动通用多模态推理的发展。在本报告中,我们分享了在以推理为核心的训练框架开发过程中的关键发现。我们首先通过大规模预训练开发了一个具备显著潜力的高性能视觉基础模型,可以说该模型为最终性能设定了上限。随后,借助课程采样强化学习(ReinforcementLearningwithCurriculumSampling,R
HttpClient 4.3与4.3版本以下版本比较
spjich
java httpclient
网上利用java发送http请求的代码很多,一搜一大把,有的利用的是java.net.*下的HttpURLConnection,有的用httpclient,而且发送的代码也分门别类。今天我们主要来说的是利用httpclient发送请求。
httpclient又可分为
httpclient3.x
httpclient4.x到httpclient4.3以下
httpclient4.3
Essential Studio Enterprise Edition 2015 v1新功能体验
Axiba
.net
概述:Essential Studio已全线升级至2015 v1版本了!新版本为JavaScript和ASP.NET MVC添加了新的文件资源管理器控件,还有其他一些控件功能升级,精彩不容错过,让我们一起来看看吧!
syncfusion公司是世界领先的Windows开发组件提供商,该公司正式对外发布Essential Studio Enterprise Edition 2015 v1版本。新版本
[宇宙与天文]微波背景辐射值与地球温度
comsci
背景
宇宙这个庞大,无边无际的空间是否存在某种确定的,变化的温度呢?
如果宇宙微波背景辐射值是表示宇宙空间温度的参数之一,那么测量这些数值,并观测周围的恒星能量输出值,我们是否获得地球的长期气候变化的情况呢?
&nbs
lvs-server
男人50
server
#!/bin/bash
#
# LVS script for VS/DR
#
#./etc/rc.d/init.d/functions
#
VIP=10.10.6.252
RIP1=10.10.6.101
RIP2=10.10.6.13
PORT=80
case $1 in
start)
/sbin/ifconfig eth2:0 $VIP broadca
java的WebCollector爬虫框架
oloz
爬虫
WebCollector主页:
https://github.com/CrawlScript/WebCollector
下载:webcollector-版本号-bin.zip将解压后文件夹中的所有jar包添加到工程既可。
接下来看demo
package org.spider.myspider;
import cn.edu.hfut.dmic.webcollector.cra
jQuery append 与 after 的区别
小猪猪08
1、after函数
定义和用法:
after() 方法在被选元素后插入指定的内容。
语法:
$(selector).after(content)
实例:
<html>
<head>
<script type="text/javascript" src="/jquery/jquery.js"></scr
mysql知识充电
香水浓
mysql
索引
索引是在存储引擎中实现的,因此每种存储引擎的索引都不一定完全相同,并且每种存储引擎也不一定支持所有索引类型。
根据存储引擎定义每个表的最大索引数和最大索引长度。所有存储引擎支持每个表至少16个索引,总索引长度至少为256字节。
大多数存储引擎有更高的限制。MYSQL中索引的存储类型有两种:BTREE和HASH,具体和表的存储引擎相关;
MYISAM和InnoDB存储引擎
我的架构经验系列文章索引
agevs
架构
下面是一些个人架构上的总结,本来想只在公司内部进行共享的,因此内容写的口语化一点,也没什么图示,所有内容没有查任何资料是脑子里面的东西吐出来的因此可能会不准确不全,希望抛砖引玉,大家互相讨论。
要注意,我这些文章是一个总体的架构经验不针对具体的语言和平台,因此也不一定是适用所有的语言和平台的。
(内容是前几天写的,现附上索引)
前端架构 http://www.
Android so lib库远程http下载和动态注册
aijuans
andorid
一、背景
在开发Android应用程序的实现,有时候需要引入第三方so lib库,但第三方so库比较大,例如开源第三方播放组件ffmpeg库, 如果直接打包的apk包里面, 整个应用程序会大很多.经过查阅资料和实验,发现通过远程下载so文件,然后再动态注册so文件时可行的。主要需要解决下载so文件存放位置以及文件读写权限问题。
二、主要
linux中svn配置出错 conf/svnserve.conf:12: Option expected 解决方法
baalwolf
option
在客户端访问subversion版本库时出现这个错误:
svnserve.conf:12: Option expected
为什么会出现这个错误呢,就是因为subversion读取配置文件svnserve.conf时,无法识别有前置空格的配置文件,如### This file controls the configuration of the svnserve daemon, if you##
MongoDB的连接池和连接管理
BigCat2013
mongodb
在关系型数据库中,我们总是需要关闭使用的数据库连接,不然大量的创建连接会导致资源的浪费甚至于数据库宕机。这篇文章主要想解释一下mongoDB的连接池以及连接管理机制,如果正对此有疑惑的朋友可以看一下。
通常我们习惯于new 一个connection并且通常在finally语句中调用connection的close()方法将其关闭。正巧,mongoDB中当我们new一个Mongo的时候,会发现它也
AngularJS使用Socket.IO
bijian1013
JavaScript AngularJS Socket.IO
目前,web应用普遍被要求是实时web应用,即服务端的数据更新之后,应用能立即更新。以前使用的技术(例如polling)存在一些局限性,而且有时我们需要在客户端打开一个socket,然后进行通信。
Socket.IO(http://socket.io/)是一个非常优秀的库,它可以帮你实
[Maven学习笔记四]Maven依赖特性
bit1129
maven
三个模块
为了说明问题,以用户登陆小web应用为例。通常一个web应用分为三个模块,模型和数据持久化层user-core, 业务逻辑层user-service以及web展现层user-web,
user-service依赖于user-core
user-web依赖于user-core和user-service
依赖作用范围
Maven的dependency定义
【Akka一】Akka入门
bit1129
akka
什么是Akka
Message-Driven Runtime is the Foundation to Reactive Applications
In Akka, your business logic is driven through message-based communication patterns that are independent of physical locatio
zabbix_api之perl语言写法
ronin47
zabbix_api之perl
zabbix_api网上比较多的写法是python或curl。上次我用java--http://bossr.iteye.com/blog/2195679,这次用perl。for example: #!/usr/bin/perl
use 5.010 ;
use strict ;
use warnings ;
use JSON :: RPC :: Client ;
use
比优衣库跟牛掰的视频流出了,兄弟连Linux运维工程师课堂实录,更加刺激,更加实在!
brotherlamp
linux运维工程师 linux运维工程师教程 linux运维工程师视频 linux运维工程师资料 linux运维工程师自学
比优衣库跟牛掰的视频流出了,兄弟连Linux运维工程师课堂实录,更加刺激,更加实在!
-----------------------------------------------------
兄弟连Linux运维工程师课堂实录-计算机基础-1-课程体系介绍1
链接:http://pan.baidu.com/s/1i3GQtGL 密码:bl65
兄弟连Lin
bitmap求哈密顿距离-给定N(1<=N<=100000)个五维的点A(x1,x2,x3,x4,x5),求两个点X(x1,x2,x3,x4,x5)和Y(
bylijinnan
java
import java.util.Random;
/**
* 题目:
* 给定N(1<=N<=100000)个五维的点A(x1,x2,x3,x4,x5),求两个点X(x1,x2,x3,x4,x5)和Y(y1,y2,y3,y4,y5),
* 使得他们的哈密顿距离(d=|x1-y1| + |x2-y2| + |x3-y3| + |x4-y4| + |x5-y5|)最大
map的三种遍历方法
chicony
map
package com.test;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class TestMap {
public static v
Linux安装mysql的一些坑
chenchao051
linux
1、mysql不建议在root用户下运行
2、出现服务启动不了,111错误,注意要用chown来赋予权限, 我在root用户下装的mysql,我就把usr/share/mysql/mysql.server复制到/etc/init.d/mysqld, (同时把my-huge.cnf复制/etc/my.cnf)
chown -R cc /etc/init.d/mysql
Sublime Text 3 配置
daizj
配置 Sublime Text
Sublime Text 3 配置解释(默认){// 设置主题文件“color_scheme”: “Packages/Color Scheme – Default/Monokai.tmTheme”,// 设置字体和大小“font_face”: “Consolas”,“font_size”: 12,// 字体选项:no_bold不显示粗体字,no_italic不显示斜体字,no_antialias和
MySQL server has gone away 问题的解决方法
dcj3sjt126com
SQL Server
MySQL server has gone away 问题解决方法,需要的朋友可以参考下。
应用程序(比如PHP)长时间的执行批量的MYSQL语句。执行一个SQL,但SQL语句过大或者语句中含有BLOB或者longblob字段。比如,图片数据的处理。都容易引起MySQL server has gone away。 今天遇到类似的情景,MySQL只是冷冷的说:MySQL server h
javascript/dom:固定居中效果
dcj3sjt126com
JavaScript
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml&
使用 Spring 2.5 注释驱动的 IoC 功能
e200702084
spring bean 配置管理 IOC Office
使用 Spring 2.5 注释驱动的 IoC 功能
developerWorks
文档选项
将打印机的版面设置成横向打印模式
打印本页
将此页作为电子邮件发送
将此页作为电子邮件发送
级别: 初级
陈 雄华 (
[email protected] ), 技术总监, 宝宝淘网络科技有限公司
2008 年 2 月 28 日
&nb
MongoDB常用操作命令
geeksun
mongodb
1. 基本操作
db.AddUser(username,password) 添加用户
db.auth(usrename,password) 设置数据库连接验证
db.cloneDataBase(fromhost)
php写守护进程(Daemon)
hongtoushizi
PHP
转载自: http://blog.csdn.net/tengzhaorong/article/details/9764655
守护进程(Daemon)是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程是一种很有用的进程。php也可以实现守护进程的功能。
1、基本概念
&nbs
spring整合mybatis,关于注入Dao对象出错问题
jonsvien
DAO spring bean mybatis prototype
今天在公司测试功能时发现一问题:
先进行代码说明:
1,controller配置了Scope="prototype"(表明每一次请求都是原子型)
@resource/@autowired service对象都可以(两种注解都可以)。
2,service 配置了Scope="prototype"(表明每一次请求都是原子型)
对象关系行为模式之标识映射
home198979
PHP 架构 企业应用 对象关系 标识映射
HELLO!架构
一、概念
identity Map:通过在映射中保存每个已经加载的对象,确保每个对象只加载一次,当要访问对象的时候,通过映射来查找它们。其实在数据源架构模式之数据映射器代码中有提及到标识映射,Mapper类的getFromMap方法就是实现标识映射的实现。
二、为什么要使用标识映射?
在数据源架构模式之数据映射器中
//c
Linux下hosts文件详解
pda158
linux
1、主机名: 无论在局域网还是INTERNET上,每台主机都有一个IP地址,是为了区分此台主机和彼台主机,也就是说IP地址就是主机的门牌号。 公网:IP地址不方便记忆,所以又有了域名。域名只是在公网(INtERNET)中存在,每个域名都对应一个IP地址,但一个IP地址可有对应多个域名。 局域网:每台机器都有一个主机名,用于主机与主机之间的便于区分,就可以为每台机器设置主机
nginx配置文件粗解
spjich
java nginx
#运行用户#user nobody;#启动进程,通常设置成和cpu的数量相等worker_processes 2;#全局错误日志及PID文件#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log inf
数学函数
w54653520
java
public
class
S {
// 传入两个整数,进行比较,返回两个数中的最大值的方法。
public
int
get(
int
num1,
int
nu