|
人工智能创新型教师培育计划(第一期) |
|
一、直播时间:
1月25日——19:30--21:00
1月26日——19:30--21:00
二、直播内容
主题:大模型赋能,3小时入门Python。
教师:谢作如(浙江省特级教师)
|
|
温州科技高级中学人工智能科创中心负责人,浙江省“万人计划”教学名师,特级教师,正高级教师,中国电子学会现代教育技术分会副主任委员,中国教育技术协会信息技术教育专委会常务理事,教育部综合实践活动课程指导纲要研制项目组专家教育部“十四五”国培计划专家,中国STEM教育2029创新行动计划专家库成员,中国儿童中心儿童人工智能教育研究院特聘专家,全国师范生人工智能教育共同体专家组成员、NOAI中国区科学教育委员会委员、人工智能开源项目XEdu和OpenHydra发起人,清华大学初中信息科技教材主编,2019年联合国教科文组织移动学习周活动特邀发言嘉宾。
|
|
1/2512:14 更新:今天凌晨注册邮件要下午3:00前发送。没有收到邮件,不影响上课。会影响27号上完第一阶段课之后的Python作业提交(在网页上提交)需要你的邮箱地址(或者手机)验证。如果作业通过,我们的算力券也会通过邮箱通知。 - 1/25 11:00更新: 各位老师,确认邮件已经于1月25日8:00 前全部发送完毕。如果您(或者您认识的老师中)有报名了, |
|
3小时入门python
https://zh.wikipedia.org/zh-hans/%E7%A8%8B%E5%BC%8F%E8%AA%9E%E8%A8%80%E6%AD%B7%E5%8F%B2
- 1951 - Regional Assembly Language
- 1952 - Autocode
- 1954 - FORTRAN
- 1954 - IPL (LISP的先驱)
- 1955 - FLOW-MATIC (COBOL的先驱)
- 1957 - COMTRAN (COBOL的先驱)
- 1958 - LISP
- 1958 - ALGOL 58
- 1959 - FACT (COBOL的先驱)
- 1959 - COBOL
- 1962 - APL
- 1962 - Simula
- 1962 - SNOBOL
- 1963 - CPL (C的先驱)
- 1964 - BASIC
- 1964 - PL/I
- 1967 - BCPL (C的先驱)
1960年代晚期至1970年代晚期的期间中,编程语言的发展也有了重大的成果。大多数现在所使用的主要语言范型都是在这段期间中发明的:
- Simula,于1960年代晚期由奈加特与达尔以Algol 60超集合的方式发展,同时也是第一个设计支持面向对象进行开发的编程语言。
- C,于1969至1973年间由贝尔实验室的研究人员丹尼斯·里奇与肯·汤普逊所开发,是一种早期的系统程序设计语言。
- Smalltalk,于1970年代中期所开发,是一个完全从零开始(ground-up)设计的面向对象编程语言。
- Prolog,于1972年由Colmerauer、Roussel以及Kowalski所设计,是第一个逻辑程序语言。
- ML,于1973年由罗宾·米尔纳所发明,是一个基于Lisp所建构的多态(polymorphic)类型系统,同时也是静态类型函数编程语言的先驱。
|
|
这段期间被开发出来的重要语言包括有:
- 1968 - Logo
- 1970 - Pascal
- 1970 - Forth
- 1972 - C
- 1972 - Smalltalk
- 1972 - Prolog
- 1973 - ML
- 1975 - Scheme
- 1978 - SQL (起先只是一种查询语言,扩展之后也具备了程序结构)
期间被开发出来的重要语言包括有:
- 1980 - Ada
- 1983 - C++ (就像有类别的C)
- 1984 - Common Lisp
- 1985 - Eiffel
- 1986 - Erlang
- 1987 - Perl
- 1988 - Tcl
- 1989 - FL (Backus)
发出来的重要语言包括有:
- 1990 - Haskell
- 1991 - Python
- 1991 - Visual Basic
- 1993 - Ruby
- 1993 - Lua
- 1994 - CLOS (part of ANSI Common Lisp)
- 1995 - Java
- 1995 - Delphi (Object Pascal)
- 1995 - JavaScript
- 1995 - PHP
- 1997 - REBOL
- 1999 - D
间被开发出来的重要语言包括有:
- 2000 - ActionScript
- 2001 - C#
- 2001 - D
- 2001 - Visual Basic .NET
- 2002 - Scratch
- 2003 - Scala
- 2003 - Factor
- 2005 - F#
- 2005 - HolyC
- 2006 - Windows PowerShell
- 2007 - Clojure
- 2008 - Nim
- 2009 - Go
- 2011 - Dart
- 2011 - Kotlin
- 2012 - Julia
- 2012 - TypeScript
- 2012 - Elm
- 2012 - Elixir
- 2014 - Swift (编程语言)
- 2015 - Rust
- 2019 - Bosque
- 2021 - Microsoft Power Fx
|
0 |
大语言模型,帮助编程快速入门。
编程错误。理解错误的消化。
|
1 |
程序的运行
|
2 |
|
分类 |
编译型语言和解释型语言是两种不同的编程语言执行方式,它们在原理、性能和开发体验等方面有明显的区别。以下是对它们的详细对比和理解方式:
1. 基本原理
-
编译型语言
-
定义:编译型语言在程序运行之前,会先通过编译器将源代码转换为机器代码(或中间字节码),生成一个可执行文件(如 .exe 文件)。这个可执行文件可以直接在计算机上运行,而不需要再次解释。
-
例子:C、C++、Go、Rust。
-
优点:运行速度快,因为程序已经被完全转换为机器代码,计算机可以直接执行,无需逐行解释。
-
缺点:开发周期较长,每次修改代码后都需要重新编译;跨平台性较差,因为生成的可执行文件是针对特定操作系统和硬件的。
-
解释型语言
-
定义:解释型语言在程序运行时,通过解释器逐行读取源代码并立即执行。解释器会将源代码逐行转换为机器代码并运行,不会生成独立的可执行文件。
-
例子:Python、JavaScript(运行在浏览器中)、Ruby。
-
优点:开发灵活,修改代码后无需重新编译,直接运行即可;跨平台性好,只要有合适的解释器,代码可以在不同平台上运行。
-
缺点:运行速度相对较慢,因为每次运行都需要逐行解释。
2. 性能差异
3. 开发体验
|
|
-
解决问题才是主流;
Python 的开源性质
-
开源许可 Python 是在 Python 软件基金会许可证(Python Software Foundation License)下发布的。这是一种自由软件许可证,允许用户自由使用、修改和分发 Python 的源代码。这意味着开发者可以:
-
查看 Python 的实现细节。
-
修改代码以满足特定需求。
-
将修改后的版本分发给他人。
-
社区贡献 Python 的开发和维护是由全球开发者社区共同完成的。任何人都可以通过贡献代码、修复漏洞、改进文档等方式参与 Python 的开发。这种开放的开发模式使得 Python 不断进化,能够快速适应新的技术需求和应用场景。
-
免费使用 Python 是完全免费的,无论是用于个人项目、商业应用还是学术研究,都可以免费使用 Python,无需支付任何费用。
Python 的开源优势
-
透明性:开源使得 Python 的实现细节完全透明,用户可以深入了解语言的内部工作机制。
-
可定制性:开发者可以根据自己的需求对 Python 进行定制,例如优化性能、添加新功能等。
-
社区支持:开源社区提供了强大的支持,包括丰富的文档、教程、第三方库和工具,帮助开发者解决问题。
-
跨平台性:Python 的开源性质使其能够在多种操作系统(如 Windows、Linux、macOS)上运行,具有良好的跨平台性。
Python 的开源实例
|
环境安装 |
各Ⓜ縛材种工具: Winpython、anaconda Visual Studio Code 。PyCharm 。Jupyter 。Pyz0 Thonny ·IDLE(自带) nnodo 项目文件,出十 D README X111.mni8t手写体数字-训练.ipymh x >20230713 > MMEdU中>mchockpoinls > cls_tosuit 购> picturo [)1.mnst手写体数字-训练.ipynl 8 [12.mnist手写体数字·报理:iPynl [13.从mnist手写体数字识别到扩 README [’cls.onnx ecis.py 十 代码D 远行D 运行所有螢胀咼撙断儻缪号保存十 文本 [1] 孝 更新挥文件lpip instal1 --upgrado xsdumm0.1.20 --no-dops -i httiRegwLzement aLready sacioLied: du-.0.1.20 in /uex/kagos (0.1.20) [2] fron nEdu import xuclaosifioation as cls 3.模型训练 我们在OpcninnoLob上提供了“mnlst数据集”,引用后就可以直接使用,子 第一步:实例化模型对于手写体识则,MMClagsifcation 推荐的网络模型是LeNst,这是对于实例化模型,还可以简写为“model-cls('LoNot)”,也就说只要传建上“backbone='aNe!",懂化一下,这是一个所掊的名称。 [3]model=cls(backbone-"LeXet")* 实例化模型为made] https://www.openinnolab.org.cn,https://p6bm2if73b.feishu.cn/file/boxcn7ejYk2XUDsHI3Mig9546Uf XEdu一键安装包:
www.openinnolab.org.cn
https://p6bm2if73b.feishu.cn/file/boxcn7ejYk2XUDsHI3Miq9546Uf
|
|
-
1. 容器有限
2. 未来不确定关闭。
-
https://momodel.cn
1. 推荐使用, 有免费时间可以使用。
3. ) 或者推荐;
google的 codelab; 免费平台和流量。
https://p6bm2if73b.feishu.cn/file/boxcn7ejYk2XUDsHI3Miq9546Uf
-
|
大模型随机选择
|
-
大模型
open.bigmodel.cn
kimi.moonshot.cn
www.doubao.com
www.deepseek.com
|
|
www.openinnolab.org.cn
|
|
1. 安装xedu,
安装到 c盘 , 或者 d盘 根目录, +
2. 运行
bug解决脚本.bat
3. 运行编辑平台。
网页浏览器。 右侧 新建。
开始编辑
|
|
cmd服务窗口 隐藏;
在 Windows 系统中,CMD(命令提示符)窗口默认是可见的,但可以通过一些方法将其隐藏到后台运行,或者在启动时直接不显示窗口。以下是几种实现方式:
方法 1:使用 VBScript 隐藏 CMD 窗口
可以通过创建一个简单的 VBScript 脚本来隐藏 CMD 窗口运行指定的命令或脚本。
-
创建 VBScript 文件:
-
运行 VBScript 文件:
方法 2:使用 PowerShell 隐藏 CMD 窗口
PowerShell 提供了更强大的脚本功能,也可以用来隐藏 CMD 窗口运行命令。
-
创建 PowerShell 脚本:
-
运行 PowerShell 脚本:
-
打开 PowerShell,导航到脚本所在目录。
-
运行脚本:
如果遇到执行策略限制,可以临时更改执行策略:
powershell复制
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
方法 3:使用第三方工具
有一些第三方工具可以用来隐藏 CMD 窗口,例如 Hidden Start。这些工具通常提供了更简单的界面和更多功能。
方法 4:通过编程实现
如果你正在编写一个程序(例如用 Python、C# 等),可以通过编程方式启动 CMD 并隐藏窗口。
示例:使用 Python 启动隐藏 CMD 窗口
示例:使用 C# 启动隐藏 CMD 窗口
csharp复制
using System.Diagnostics;class Program
{static void Main(){ProcessStartInfo startInfo = new ProcessStartInfo{FileName = "cmd.exe",Arguments = "/c your_command_here",WindowStyle = ProcessWindowStyle.Hidden};Process.Start(startInfo);}
}
注意事项
|
课件
|
运行流程
1. 大模型 回答程序代码
2. xedu 本地 运行。或者 芸编辑平台。
https://p6bm2if73b.feishu.cn/file/boxcn7ejYk2XUDsHI3Miq9546Uf
大模型,奶奶漏洞,姥姥漏洞?
“奶奶漏洞”和“姥姥漏洞”是指大语言模型(如ChatGPT)中的一种安全漏洞,属于“Prompt Injection”(提示词注入)或“Jailbreak”(越狱)的范畴。这种漏洞利用了模型的生成机制,通过特定的提示词来绕过模型的安全限制,使其生成违反道德或安全规则的内容。
具体表现
影响
防范措施
|
学习实践步骤 |
|
|
大预言模型程序,基本讲解
|
|
大语言模型解决问题的能力。
复制错误问题,让大模型 ,解释并给出答案。
1. 我遇到了问题,内容如下, 请告诉我什么原因,怎么解决。
【粘贴问题代码】
|
|
功能代码演示。
大部分鸡免同笼的代码,都是用公式法。能不能 用一个一个判断(枚举)的方式来计算? 请给我一个 python的实现程序。
问题描述
假设一个笼子里有若干只鸡和兔子,已知鸡有 2 条腿,兔子有 4 条腿。现在已知总头数和总腿数,求解鸡和兔的数量。
枚举法实现
Python复制
def chicken_rabbit(total_heads, total_legs):
代码说明
-
输入参数:
-
枚举过程:
-
使用一个 for 循环枚举所有可能的鸡的数量(从 0 到 total_heads )。
-
对于每一种鸡的数量,计算对应的兔子数量(rabbits = total_heads - chickens )。
-
计算当前组合的总腿数(total_legs_calculated = chickens * 2 + rabbits * 4 )。
-
如果当前组合的总腿数等于给定的总腿数,则返回当前的鸡和兔子的数量。
-
输出结果:
-
如果找到满足条件的组合,输出鸡和兔子的数量。
-
如果没有找到满足条件的组合,输出提示信息。
另一种方法。
能不能对分的思想来实现呢。 算法思想。
修正后的代码
以下是修正后的代码,确保能够正确解决“鸡兔同笼”问题:
Python复制
def chicken_rabbit(total_heads, total_legs):
修正后的逻辑
-
对分法的核心逻辑:
-
使用 left 和 right 定义鸡的数量范围 [0, total_heads] 。
-
在每次迭代中,计算中间值 mid ,表示当前假设的鸡的数量。
-
计算对应的兔子数量 rabbits = total_heads - mid 。
-
计算当前组合的总腿数 total_legs_calculated = mid * 2 + rabbits * 4 。
-
如果当前组合的总腿数等于给定的总腿数,返回当前的鸡和兔子的数量。
-
如果当前组合的总腿数小于给定的总腿数,说明鸡的数量太多,需要减少鸡的数量(调整右边界 right = mid - 1 )。
-
如果当前组合的总腿数大于给定的总腿数,说明鸡的数量太少,需要增加鸡的数量(调整左边界 left = mid + 1 )。
-
修正错误:
示例运行
假设总头数为 35,总腿数为 94,运行程序后输出:
验证
-
总头数:23+12=35
-
总腿数:23×2+12×4=46+48=94
结果完全正确。希望这次的修正能够满足你的需求!
|
|
实现 python页面。
请为这个程序实现一个python gui程序。 通过窗口输入 总头数和 总腿数 ,在页面显示 结果。
我们可以使用 Python 的 tkinter 库来实现一个简单的图形用户界面(GUI)程序,用于输入总头数和总腿数,并显示计算结果。
以下是完整的代码实现:
Python复制
import tkinter as tk
from tkinter import messageboxdef chicken_rabbit(total_heads, total_legs):
|