news 2026/8/28 7:56:17

大模型语言之python语法一天速通

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
大模型语言之python语法一天速通

一、Python 类型转换

json.dumps()

作用:Python 对象 → JSON 字符串方向:内存数据 → 可网络传输 / 写入文本的字符串

dict_data = {"title":"券商研报"} json_str = json.dumps(dict_data, ensure_ascii=False) # 结果:字符串 '{"title":"券商研报"}'

常用参数:ensure_ascii=False→ 正常显示中文(写大模型请求体必加)

json.loads()

作用:JSON 字符串 → Python 字典 / 列表方向:接口收到的文本 → 程序可操作对象

json_str = '{"title":"券商研报"}' data = json.loads(json_str) # 结果:字典,可以直接 data["title"] 取值

一句话口诀

  • dumps:堆成字符串(对象→字符串)
  • loads:加载成对象(字符串→对象)

LLM 项目典型流程

构造请求字典 →dumps转为字符串发给 API 接收接口返回文本 →loads转回字典读取回答

break / continue

。。。

二、Python 同步 / 异步协程

(一)思维导图

核心一句话先记住:同步 = 排队挨个做;异步协程 = 一个线程里切换干多件事,不等 IO 空窗就切去别的活

问题:sleep 期间线程卡死,啥都不干

✅ 异步协程执行

import asyncio async def work(): await asyncio.sleep(2) # 非阻塞等待,让出控制权 print("干完") asyncio.run(work()) # 启动事件循环跑协程

(二)并发怎么实现?

  • 单协程:顺序跑,没有并发
  • 多协程并发:asyncio.create_task()或者asyncio.gather()
import asyncio # 同时跑多个任务 async def main(): t1 = asyncio.create_task(work()) t2 = asyncio.create_task(work()) await t1 await t2 asyncio.run(main())

耗时:2 秒左右,而同步要 4 秒

(三)什么时候用异步协程?

  • ✅ 适合:IO 密集型(网络请求、数据库读写、文件读写)
  • ❌ 不适合:CPU 密集型(大量计算,异步没用,要用多进程)

(四)容易踩的坑(傻子必看避坑)

  1. async 函数直接调用 → 只生成对象,不运行!必须交给 asyncio
  2. await 不能写在普通 def 函数里面,会报错
  3. 不能用 time.sleep ()!会阻塞整个事件循环,要用 await asyncio.sleep ()
  4. 异步里不要混大量同步阻塞代码,会废掉并发效果

(五)同步 / 异步一句话总结

  • 同步:串行排队,阻塞等待,简单慢
  • 异步协程:单线程并发,IO 空档复用,IO 场景速度快
## 📌 额外补充(傻瓜式区分口诀) > 遇IO就等=同步 > 遇IO就切=异步协程 > async造任务,await等结果,asyncio来调度

三、WSGI & ASGI

前置一句话:WSGI / ASGI 不是服务器,是【web 框架 和 web 服务器之间的接口标准】就像插座标准:电器(Django/Flask/FastAPI)、插排(gunicorn/uvicorn)必须遵守同一个插座规范才能通电通信

(一)思维导图

(二)WSGI(Web Server Gateway Interface)

✅ 核心属性

同步接口标准!诞生很早,专门适配同步 Python Web 框架(老 Django、Flask)

  • 只支持同步函数,不支持异步
  • 一个请求过来,就占用一个工作线程,处理完才释放
  • 无法原生支持长连接:WebSocket、服务推送 SSE 都不行

✅ 工作流程

客户端请求 → WSGI 服务器(Gunicorn/uWSGI) → 调用框架同步函数处理 → 返回响应

类比:银行窗口,1 个窗口一次只能接待 1 个人,这个人没办完,后面所有人排队等着

✅ 配套组件

  • WSGI 服务器:gunicorn、uwsgi
  • 框架:Flask、Django(老版本默认 wsgi 模式)

✅ 缺点

遇到 IO 等待(查数据库、调第三方接口)时,线程卡死干等着,没法处理别的请求,并发上限低

(三)ASGI(Asynchronous Server Gateway Interface)

✅ 核心属性

异步接口标准!WSGI 的升级版,支持异步,兼容同步

  • 支持async def异步函数(和咱们刚才学的协程配套)
  • 单线程可以同时处理大量请求(IO 空档切换任务)
  • 原生支持长连接:WebSocket、SSE、实时推送

✅ 工作流程

客户端请求 → ASGI 服务器(Uvicorn/Granian) → 可以调用异步协程处理 → 返回响应

类比:客服同时对接很多客户,A 客户在等待资料(IO)的时候,客服先回复 B 客户,不用干等

✅ 配套组件

  • ASGI 服务器:uvicorn、granian、daphne
  • 框架:FastAPI、Starlette、Django3.2+(支持 asgi)

✅ 优势

IO 密集场景并发高,支持实时通信,是现在主流新框架的标准

(四)核心对比表(极简)

(五)高频坑(重点)

  1. gunicorn 默认是 WSGI,但是 gunicorn 可以搭配 uvicorn 的 worker,变成 ASGI 服务!
    # gunicorn + uvicorn worker 跑FastAPI(生产常用) gunicorn main:app -w 4 -k uvicorn.workers.UvicornWorker
  2. FastAPI 必须 ASGI,不能直接丢给纯 WSGI 服务器跑异步能力(会退化成同步)
  3. Django 同时支持 WSGI 和 ASGI,配置文件里wsgi.py/asgi.py

(六)一句话终极总结

  • WSGI:老同步标准,只处理一次性 http 请求,不支持 websocket
  • ASGI:新版异步标准,基于协程,支持高并发 + 长连接
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/28 7:56:05

i.MX8M Plus NPU深入解析:从硬件架构到模型部署实战

1. 项目背景与核心价值1.1 为什么是i.MX8M PlusEdge AI爆发的这几年,ARM架构处理器从被动承受AI任务到主动内置NPU,i.MX8M Plus是转型过程中很有代表性的一个节点。NXP发布这颗芯片时,最大卖点并不是四核Cortex-A53有多快,也不是G…

作者头像 李华
网站建设 2026/8/28 7:55:53

[特殊字符]新课标英语怎么学?大单元教学才是关键

最近不少家长发现,孩子英语课本变了——不再是一课一课孤立地学单词、语法,而是围绕一个主题,把听、说、读、写全部串在一起。这就是新课标推行的"大单元教学"。❶ 什么是大单元教学?简单说,就是把零散的知识…

作者头像 李华
网站建设 2026/8/28 7:52:21

基于Chinese-CLIP与FAISS构建中文图文检索系统:从原理到工程实践

简介:图文检索是计算机视觉与自然语言处理交叉领域的关键技术,其核心原理在于将图像和文本映射到统一的语义向量空间,通过计算向量相似度实现跨模态匹配。这项技术的工程价值在于,它能够绕过传统方法所需的人工标注,直…

作者头像 李华
网站建设 2026/8/28 7:52:09

数据迁移如何成为AI治理的试金石?一套可验证的测试方法

AI治理不是建一个审批平台就结束了。真正能让治理规则现原形的,是一次“迁移(migration)”。项目标题把 Immigration 当作行政AI治理(Executive AI Governance)的测试案例,落到工程语境里,最贴近…

作者头像 李华
网站建设 2026/8/28 7:51:16

SAM+回滚莫队+二次离线:字符串离线查询的算法组合优化

1. 项目概述:当字符串难题遇上离线算法组合拳 如果你在准备算法竞赛,尤其是涉及到字符串处理和复杂区间查询的题目时,看到“SAM、回滚莫队、二次离线”这几个词组合在一起,大概率会感到一阵头皮发麻。这通常意味着一道将字符串高级…

作者头像 李华
网站建设 2026/8/28 7:49:26

深度优先搜索(DFS)迷宫问题:从算法原理到蓝桥杯竞赛实战

1. 项目概述:从迷宫到算法竞赛的实战桥梁“深度优先搜索-迷宫问题”这个标题,对于参加过蓝桥杯这类算法竞赛的同学来说,简直再熟悉不过了。它就像算法世界里的“Hello World”,是检验你是否真正理解DFS(深度优先搜索&a…

作者头像 李华