Linux中使用curl命令发送带参数的get请求和post请求

  1. curl与wget 命令的区别
    相似之处:wget 和 cURL 都可以下载内容,都可以向互联网发送请求并返回请求项,也可以进行 HTTP POST 请求,它们都是命令行工具,可以设计成可脚本化应用到bash脚本中。

wget特点:简单直接、可直接下载程序、支持递归下载、使用方便。

curl特点:多功能工具、支持多种网络协议、安全、支持 gzip 压缩技术。

   选择使用 curl还是使用 wget?

根据实际情况而定。如果想快速下载并且没有担心参数标识的需求,使用轻便有效的 wget。如果你想做一些更复杂的使用,直觉告诉你,你应该选择 curl。

curl可以理解为命令行网页浏览器,能处理好多事情,并且支持多种网络协议,可交互访问在线内容。不同的是curlL 不会渲染接收到的相应信息。

这里主要说明下curl命令发送带参数的get和post请求如何使用。

  1. curl命令Get请求
    语法:curl命令 + 请求接口的地址

curl http://baidu.com

如果需要,可根据情况进行重定向 curl http://baidu.com > page.hrml

注意:

问题:如果请求的URL含有&转义字符,会提示参数不对,报错?

crul http://172.16.134.9:1153/mp_mcss/vcn-image.do?mode=2&fileUuid=92dc1c25980d4a1c9b59d928a092e478 > 2.jpg

原因:由于URL中&不转义,curl请求时会分开访问。

解决办法:

1) URL连接上加上双引号

crul “http://172.16.134.9:1153/mp_mcss/vcn-image.do?mode=2&fileUuid=92dc1c25980d4a1c9b59d928a092e478” > 2.jpg

2) URL连接&前加\ 就可以取消转义

  1. curl命令Post请求
    举例:带header和body的POST请求

curl -v -XPOST -H “Content-Type:application/json” http://172.24.7.63:36963/VIID/MotorVehicles -d ‘ {“DataType” : “Face”} ‘

说明:

-v 详细的请求信息

-XPOST 指定请求凡是为POST请求

-H 指定请求头部

-d 指定传送数据为json格式

注意:

1) 如果传送json数据过大,由于数据长度限制会出现curl失败?

解决方案:将json写成文件形式报错,例如data.json

curl -v -XPOST -H “Content-Type:application/json” http://172.24.7.63:36963/VIID/MotorVehicles -d @data.json

至于,DELETE和PUT请求可参考网上资源。

原文链接:https://blog.csdn.net/finghting321/article/details/105733140/

自己部署本地大模型

可以CPU

https://github.com/ollama/ollama直接下载安装(有可linux,windows)
安装后打开CMD,按提示运行相应的模型,如
ollama run llama3

以下是70B的,
ollama run llama3:70b
以下是根据llama3微调后的100万上下文模型
ollama run llama3-gradient
还有其它模型,看官网。

按以上命令运行后会自动下载相应的模型,然后就可以直接在命令行窗口和大模型聊天了,
你也可以在huggface上下载其它模型用https://liaoxuefeng.com/blogs/all/2024-05-06-llama3/index.html

只有命令行,如果要UI,网上有开源的,
对开发人员来说,有https://github.com/ollama/ollama-python这个库是python对API接口的包装,可以直接拉来用

Ollama本身也提供了restAPI,可以直接调用

Generate a response

curl http://localhost:11434/api/generate -d '{
  "model": "llama3",
  "prompt":"Why is the sky blue?"
}'

Chat with a model

curl http://localhost:11434/api/chat -d '{
  "model": "llama3",
  "messages": [
    { "role": "user", "content": "why is the sky blue?" }
  ]
}'