- 博客(69)
- 资源 (189)
- 收藏
- 关注
原创 基于langchain和gradio实现天气查询智能体,本地ollama大模型调实时天气api,前端输入即可自动返回天气
使用本地ollama大模型调实时天气api接口的方式,大模型识别和理解你要查询的请求,然后调第三方天气api接口返回实时天气
2024-11-22 11:13:03 125
原创 LLaMA-Factory大模型训练框架相关参数解释
vllm:利用向量化计算加速大模型推理过程,传统深度学习在推理过程中,往往采用逐个样本的处理方式,这在处理大模型时效率较低,而vllm框架通过一次处理多个样本,充分利用了计算资源,实现了高效的推理性能。大量减少了大模型微调参数,是一种参数高效的微调方法,只需微调高层特征,加快模型收敛,节约微调时间,最大程度保留大模型预训练学习到的语言的 “共性”,可解释性较强。(1)学习率:控制模型学习速度的参数,学习率高时,模型学习速度快,但可能导致学习过程不稳定,学习率低时,模型学习速度慢,训练时间长,效率低。
2024-10-25 11:10:51 930
原创 llamafactory用多卡4090服务器,训练qwen14B大模型时报错GPU显存不足oom(out of memory),已解决
通过export CUDA_VISIBLE_DVICES=0,1,2,3,4,5,6,7指定使用8张显卡,训练qwen2.5-7B大模型时正常,但训练qwen2.5-14B,qwen2.5-32B模型时报错,torch.OutOfMemoryError:CUDA out of memory。至于ds_config_zero3.json这个,可以去qwen官网下载,https://github.com/QwenLM/Qwen/blob/main/finetune/ds_config_zero3.json。
2024-10-23 10:26:51 918
原创 最长递增子序列
import bisectclass Solution: def LIS(self , arr ): # write code here max_len = [1] * len(arr) max_arr = [arr[0]] for i in range(1, len(arr)): if arr[i] > max_arr[-1]: max_arr.append(arr[i]
2021-09-13 22:55:23 242
原创 合并K个已经排序的链表
class Solution: def mergeKLists(self , lists ): if len(lists)==0: return None res=[] for cur in lists: #将链表元素保存到列表res中 while cur!=None: res.append(cur.val) cur=cur.next
2021-09-13 22:46:45 274
原创 二叉树的层序遍历(广度优先遍历)
class Solution: def levelOrder(self , root ): if root==None: return [] res=[] #最终结果 queue=[root] #用于保存根节点 while queue: n=len(queue) temp=[] #当前层节点放入临时列表temp for i in range(
2021-09-13 22:20:28 272
原创 二叉树的最大深度
class Solution: def maxDepth(self , root ): if root==None: return 0 left_depth=self.maxDepth(root.left) right_depth=self.maxDepth(root.right) max_depth=max(left_depth,right_depth)+1 return max_depth
2021-09-13 22:19:25 161
原创 二叉树的第K个节点
class Solution: # 返回对应节点TreeNode def KthNode(self, root, k): if root==None or k==0: return None res=[] def Mid(node): if len(res)>=k or node==None: return None Mid(node.
2021-09-13 22:18:21 133
原创 判断链表是否为回文结构
#判断链表是否为回文结构class Solution: def isPail(self,head): cur=head mylist=[] while cur!=None: mylist.append(cur.val) cur=cur.next n=len(mylist) for i in range(0,n//2): if mylist[i]!=
2021-09-10 13:03:50 120
原创 删除有序链表中的重复结点
#删除有序链表中的重复结点 class Solution: def deleteDuplicates(self,head): if head==None or head.next==None: return head cur=head while cur.next!=None: if cur.val==cur.next.val: cur.next=cur.next.ne
2021-09-10 13:02:36 121
原创 将有序数组转为二叉树并实现层序遍历(BFS)
#将有序数组转为二叉树并实现层序遍历(BFS)class BitNode: def __init__(self): self.data=None self.lchild=None self.rchild=None def arrtotree(self,arr,start,end): #将数组转为二叉树苏 root=None if end>=start: root=BitNode()
2021-09-10 12:47:11 350
原创 将有序数组转为二叉树并实现中序遍历输出
#将有序数组转为二叉树并实现中序遍历输出class BitNode: def __init__(self): self.data=None self.lchild=None self.rchild=None def arrtotree(self,arr,start,end): #将数组转为二叉树苏 root=None if end>=start: root=BitNode()
2021-09-10 12:46:46 296
原创 数字字符串转IP地址
#数字字符串转IP地址class Solution: def restoreIpAddresses(self, s): ans = [] def judge_ip(s): if s[0]=='0': if len(s)==1: return True else: return False
2021-09-10 12:46:08 107
原创 Python3牛客网笔试input()键盘多行输入输出数据,转换为题目需要的格式
1.输入一行数据,转为列表(中间以空格隔开)#输入一行数据,转为列表(中间以空格隔开)x=input() #1 2 3 4 5arr=[]for data in x.split(' '): arr.append(int(data))print(arr) #[1,2,3,4,5]2.输入一行数据,转为列表(中间以空格隔开)#输入一行数据,转为列表(中间以逗号隔开)x=input() #1,2,3,4,5arr=[]for data in x.split(','): ar
2021-09-04 14:02:57 1860 2
原创 《操作系统》求职常见面试题汇总
1、进程管理进程是具有独立功能程序在某个数据集合上的一次执行过程。线程是进程内的一个执行实体或执行单元。进程和线程的区别:(a)不同进程的地址空间是独立的,而同一进程内的线程共享同一地址空间。一个进程的线程在另一个进程内是不可见的。(b) 在引入线程的操作系统中,进程是资源分配和调度的单位,线程是处理机调度和分配的单位,资源是分配给进程的,线程只拥有很少资源,因而切换代价比进程切换低。区别版本二1)调度方面。在传统的操作系统中,拥有资源和独立调度的基本单位都是进程。而在引入线程的操作系统中,线程
2021-08-29 09:26:30 715
原创 《MySQL数据库》求职面试常见问题汇总
MySQL存储引擎:MyISAM:○1不支持事务,但是每次查询都是原子的;○2支持表级锁,即每次操作是对整个表加锁;○3一个MYISAM表有三个文件:索引文件、表结构文件、数据文件;○4采用非聚集索引,索引文件的数据域存储指向数据文件的指针,辅索引与主索引基本一致,但是辅索引不用保证唯一性。○5存储表的总行数InnoDB:○1支持ACID的事务,支持事务的四种隔离级别;○2支持行级锁及外键约束:因此可以支持写并发;○3不存储总行数;○4一个InnoDb引擎存储在一个文件空间(共享表空.
2021-08-25 09:40:16 298
原创 《计算机网络》求职面试题汇总
《计算机网络》求职面试题汇总1. TCP三次握手,四次挥手过程:第一次握手:建立连接时,客户端发送syn包(syn=x)到服务器,并进入SYN_SENT状态,等待服务器确认;SYN:同步序列编号(Synchronize Sequence Numbers);第二次握手:服务器收到syn包,必须确认客户的SYN(ack=x+1),同时自己也发送一个SYN包(syn=y),即SYN+ACK包,此时服务器进入SYN_RECV状态;第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ac
2021-08-21 16:59:30 243
原创 python合并两个有序链表(如1->3->5和2->4->6合并,结果为1->2->3->4->5->6)
#合并两个有序链表(如1->3->5和2->4->6合并,结果为1->2->3->4->5->6)class Solution: def Merge(self, head1, head2): if head1 == None: return head2 if head2 == None: return head1 if head1.val <
2021-08-18 19:58:53 136
原创 python链表以k个结点为一组进行翻转(如1->2->3->4->5->6->7,k=3时,结果为3->2->1->6->5->4->7)
#链表以k个结点为一组进行翻转(如1->2->3->4->5->6->7,k=3时,结果为3->2->1->6->5->4->7) class Node: def __new__(self,value=None,next=None): self.value=value self.next=next def Reversekgroup(self,head,k): if
2021-08-18 19:58:20 159
原创 python创建并输出链表
#创建并输出链表class Node: def __init__(self,value=None,next=None): self.value=value self.next=nextif __name__ =="__main__": i = 1 head = Node(None) head.next = None cur = head while i<9: tmp = Node(i)
2021-08-18 19:57:40 933
原创 python链表相邻两个元素翻转(如head->1->2->3->4->5->6->7相邻元素翻转后head->2->1->4->3->6->5->7)
#链表相邻两个元素翻转(如head->1->2->3->4->5->6->7相邻元素翻转后head->2->1->4->3->6->5->7)class Node: def __init__(self,value,next): self.value=value self.next=nextdef reverse(head): if head==None or head.ne
2021-08-18 19:57:07 142
原创 python寻找链表倒数第k个元素(如head->1->2->3->4->5->6->7倒数第3个元素为5)
#寻找链表倒数第k个元素(如head->1->2->3->4->5->6->7倒数第3个元素为5)class Node: def __init__(self,value,next): self.value=value self.next=nextclass Solution: def findlink(self,head,k): if head==None or k<=0:
2021-08-18 19:56:27 143
原创 python判断单链表是否有环(如1->2->3->4->5->3有环,环的入口为3)
#判断单链表是否有环(如1->2->3->4->5->3有环,环的入口为3)#特殊情况:链表为空,长度为1时,都不是有环链表#方法1:(将结点遍历加入列表,若列表中某个结点已经存在,说明该结点有两个,即链表有环)class Solution: def hasCycle(self,head): visited=[] while head!=None: if head in visited:
2021-08-18 19:55:55 238
原创 python创建链表并插入元素
#创建链表并插入元素class Node: def __init__(self,value=None,next=None): self.value=value self.next=nextlist1=Node(1)p=list1for i in range(2,10): p.next=Node(i) p=p.nextp=list1while p!=None: print(p.value) p=p.next #结果为1,2,
2021-08-18 19:54:27 1649
原创 python链表逆序反转(如head->1->2->3->4->5->6反转后为head->6->5->4->3->2->1)
#链表逆序反转(如head->1->2->3->4->5->6反转后为head->6->5->4->3->2->1)class Node: def __init__(self,value=None,next=None): self.value=value self.next=next def reverse(head): cur=head #初始化当前结点为头结点
2021-08-18 19:53:30 147
原创 python二分查找算法
#二分查找算法 class Solution: def search(self,nums,target): if nums is None or len(nums)==0: return -1 left,right = 0,len(nums)-1 while(left<right): mid = left + (right - left)//2 if nums[mid
2021-08-18 19:52:51 83
原创 python使用递归算法计算乘积和斐波那契数列
#使用递归算法计算乘积def mul(num1,num2,result): if num1==0 or num2==0: result+=0 elif num2<0: result-=num1 num2+=1 result=mul(num1,num2,result) elif num2>0: result+=num1 num2-=1 result=mul(nu
2021-08-16 09:57:52 553
原创 python三种方法找出连续数组中唯一重复元素(如[1,2,4,6,5,3,5,7,8,0,9]中唯一重复元素为5)
#找出连续数组中唯一的重复元素#方法1:先排序再进行两两比较def findDup(array): if array==None: return -1 length=len(array) for i in range(length): for j in range(i+1,length): if array[j]>array[i]: array[i],array[j]=array[j],
2021-08-16 09:49:30 848
原创 python找出数组中只出现1次的数字(如[1,2,2,3,4,4,4,4]中只出现1次的数字为1,3)
#找出数组中只出现1次的数字#字典法def findJishu(array): if array==None: return 0 dic=dict() length=len(array) for i in range(length): if array[i] not in dic: dic[array[i]]=1 else: dic[array[i]]=0 f
2021-08-16 09:47:25 1616
原创 python计算数组中两个数之间的最小距离(如[4,5,6,4,7,4,7,8,5,6,4,3,10,8]中4和8的最小距离为2)
#计算数组中两个数之间的最小距离#动态规划法,记录num1和num2的最新位置,计算位置差得最小值def minDistance(array,num1,num2): if array==None: return 0 location1=-1 #数字num1的最新位置 location2=-1 #数字num2的最新位置 minDis=2**32 #两个数字间的最小距离 length=len(array) for i in range(leng
2021-08-16 09:42:56 896
原创 python求数组连续最大和(如[1,-2,4,8,-4,7,-1,-5]最大连续和为15)
#求数组连续最大和def maxSub(array): if array==None: return 0 length=len(array) maxSum=-2**31 for i in range(length): #外层循环决定从第几个数开始遍历 sum=array[i] #每次初始化sum for j in range(i+1,length): #内层循环计算和 sum+=array[j]
2021-08-16 09:40:26 324
原创 python找出数组中只出现一次的数(如[1,2,4,5,6,4,2]中只出现一次的数为1,5,6)
#找出数组中只出现一次的数def findOnce(array): if array==None: return 0 length=len(array) dic=dict() for i in range(length): if array[i] in dic: dic[array[i]]=0 else: dic[array[i]]=1 for key,value in
2021-08-16 09:38:53 705
原创 python将二维数组逆时针旋转45°
#二维数组逆时针旋转45°def rotate(array): if array==None: return 0 length=len(array) #右上角输出 i=length-1 while i>0: #外层循环用于控制行数,如n*n矩阵右上角输出有n-1行 row=0 col=i while col<length:#内层循环用于输出元素,如n=4时,依次输出[0,3];[0,2],[
2021-08-16 09:36:43 1292
原创 python对数组进行循环右移(如[1,2,3,4,5]循环右移3位结果为[3,4,5,1,2])
#对数组进行循环右移def reverse(array,start,end): #数组逆序 if array==None: return 0 while start<end: array[start],array[end]=array[end],array[start] start+=1 end-=1def shift(array,k): #数组向右循环移位k位 if array==None:
2021-08-16 09:33:57 1030
原创 python寻找最多覆盖点(长度为8的绳子最多可以覆盖几个点)
#寻找最多覆盖点def maxCover(array,L): count=2 maxCount=1 n=len(array) start=0 i=0 j=1 while i<n and j<n: while j<n and (array[j]-array[i]<=L): j+=1 count+=1 j-=1 count-=1
2021-08-16 09:30:38 132
原创 python二分法求一个数的平方根(如2的平方根为1.414)
#二分法求平方根 class Solution: def sqrt(self , x ): result=x/2.0 low=0.0 high=x*1.0 while abs(result**2-x)>0.00001: if result**2>x: high=result result=low+(result-low)/
2021-08-16 09:24:52 797
原创 python实现字符串反转(如abcde反转为edcba)
#字符串反转def reverse(str): a=list(str) n=len(str) i=0 j=n-1 while i<j: temp=a[j] a[j]=a[i] a[i]=temp i+=1 j-=1 result=''.join(a) print(result)if __name__ == '__main__': str='abcde'
2021-08-15 16:51:31 2398
基于C#的恒温系统串口通信上位机软件源程序.zip
2020-07-08
Android开发150套界面资源.zip
2020-07-08
北京科技大学研究生2020年《视觉测量技术》期末考试试卷.doc
2020-07-08
北京科技大学2020年研究生视觉测量技术期末考试试卷.pdf
2020-07-08
JAVA语言代码查错器.zip
2020-07-01
C#文件基本操作.zip
2020-06-21
北京科技大学2020年研究生随机过程期末考试试卷.pdf
2020-06-21
Tesla A100 GPU手册.pdf
2020-07-19
Shell(希尔)排序算法C语言源程序.zip
2020-07-19
插入排序算法C语言程序.zip
2020-07-19
选择排序算法C语言源程序.zip
2020-07-18
C语言贪心算法求解最少硬币问题源程序.zip
2020-07-17
C语言蒙特卡罗算法估算π值源程序.zip
2020-07-17
C语言分治算法求解30枚银币中的某枚假币.zip
2020-07-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人