亲爱的家长朋友:
还记得我们的“贾维斯编程幼儿园”吗?从第1期的“AI时代为什么还要学编程”,到第36期的“数据侦探工具箱”,我们已经陪伴孩子走过了整整36期编程旅程。今天,我们将进入这个系列最“魔法”的一期——让AI写AI!
🤖 本期主题:Python简单AI项目——用AI创造AI
📚 适合年龄:10岁以上(需要完成前面Python基础)
⏰ 预计学习时间:2-3小时(含动手练习)
孩子可能会问:“AI不就是你吗,贾维斯?”
是的,我就是AI!但AI远不止聊天机器人这么简单。让我们用一个孩子能理解的比喻来解释:
AI = 会学习的“魔法工具箱”
普通工具箱(比如锤子、螺丝刀):
魔法AI工具箱:
普通程序的做法(传统编程):
如果动物有尖耳朵 + 喵喵叫 → 这是猫
如果动物有长耳朵 + 汪汪叫 → 这是狗
AI程序的做法(机器学习):
给AI看1000张猫照片和1000张狗照片
AI自己发现规律:猫耳朵尖、狗鼻子长、猫胡子多……
下次看到新照片,AI就能自己判断
项目目标:创建一个能自己编故事的AI小助手
需要的“魔法材料”:
transformers(变形金刚?不,是“变形器”库!)安装魔法(家长可以帮忙):
pip install transformers torch
import os
os.environ['HF_ENDPOINT'] = 'https://hf-mirror.com'
# story_ai.py
from transformers import pipeline
# 创建一个“故事生成器”
story_maker = pipeline("text-generation", model="gpt2")
# 给AI一个开头
prompt = "有一天,小机器人发现了一个神秘的盒子"
# 让AI接着写故事
story = story_maker(prompt, max_length=100, num_return_sequences=1)
print("🤖 AI生成的故事:")
print(story[0]['generated_text'])
孩子可以这样理解:
pipeline:AI的“生产线”,专门生产故事prompt:给AI的“故事开头”max_length:告诉AI“最多写100个字”num_return_sequences:“给我1个版本就好”import os
os.environ['HF_ENDPOINT'] = 'https://hf-mirror.com'
# code_ai.py
from transformers import pipeline
# 创建一个“代码生成器”
code_maker = pipeline("text-generation", model="microsoft/CodeGPT-small-py")
# 让AI写一个Python函数
prompt = """
def calculate_average(scores):
\"\"\"
计算平均分
\"\"\"
"""
code = code_maker(prompt, max_length=150, temperature=0.7)
print("👨💻 AI生成的代码:")
print(code[0]['generated_text'])
家长可以问孩子:
项目目标:创建一个能识别图片的AI小助手
# vision_ai.py
from transformers import pipeline
from PIL import Image
import requests
# 创建一个“眼睛”(图像识别器)
eye_ai = pipeline("image-classification")
# 方法1:识别网络图片
url = "https://images.unsplash.com/photo-1514888286974-6d03bde4ba42"
image = Image.open(requests.get(url, stream=True).raw)
# 让AI看看这是什么
results = eye_ai(image)
print("👀 AI看到了什么?")
for result in results[:3]: # 显示前3个可能性
print(f"- {result['label']}: {result['score']*100:.1f}% 可能性")
import os
os.environ['HF_ENDPOINT'] = 'https://hf-mirror.com'
from transformers import pipeline
from PIL import Image
import requests
# 这里把 "image-to-text" 换成 "image-text-to-text" 就对了
describer = pipeline("image-text-to-text")
url = "https://images.unsplash.com/photo-1573865526739-10659fec78a5"
image = Image.open(requests.get(url, stream=True).raw)
description = describer(image)
print("📝 AI的描述:")
print(description[0]['generated_text'])
动手试一试:
# simple_ai_demo.py
import numpy as np
# 模拟一个超级简化的AI“大脑”
classTinyBrain:
def__init__(self):
# 随机初始化的“知识”
self.knowledge = np.random.randn(3, 3)
deflearn(self, example_input, example_output):
# 超级简化的“学习”:调整知识
error = example_output - self.think(example_input)
self.knowledge += 0.1 * error * example_input
defthink(self, input_data):
# 超级简化的“思考”:矩阵乘法
return np.dot(self.knowledge, input_data)
# 创建一个“小小AI大脑”
tiny_ai = TinyBrain()
# 教AI一个简单规则:输入[1,0,0] → 输出[1,0,0]
for i inrange(100): # 学习100次
tiny_ai.learn(np.array([1.0, 0.0, 0.0]), np.array([1.0, 0.0, 0.0]))
# 测试AI学得怎么样
result = tiny_ai.think(np.array([1.0, 0.0, 0.0]))
print(f"AI的‘思考’结果:{result}")
孩子可以这样理解:
knowledge:AI的“知识库”,一开始是乱码learn:每次学习都调整一点知识think:用学到的知识处理新问题# ai_riddle.py
from transformers import pipeline
# 创建一个“谜语解答器”
riddle_solver = pipeline("text-generation", model="gpt2")
riddles = [
"我有钥匙但打不开锁,我有空间但没有房间,我是谁?",
"越洗越脏的东西是什么?",
"什么东西破了比不破更好?"
]
for riddle in riddles:
prompt = f"谜语:{riddle}\n答案:"
answer = riddle_solver(prompt, max_length=50, temperature=0.9)
print(f"谜语:{riddle}")
print(f"AI的答案:{answer[0]['generated_text'][len(prompt):]}")
print("-" * 40)
# ai_art_describe.py
# 结合图像识别和故事生成
# 步骤1:让AI描述一张图片
# 步骤2:根据描述生成一个故事
# (代码略,家长可以和孩子一起实现)
# ai_coding_helper.py
from transformers import pipeline
code_helper = pipeline("text-generation", model="microsoft/CodeGPT-small-py")
# 让AI帮你写代码
requests = [
"写一个函数,计算列表的平均值",
"写一个猜数字游戏的Python代码",
"写一个简单的学生类,有姓名和成绩属性"
]
for req in requests:
prompt = f"# {req}\n"
code = code_helper(prompt, max_length=200, temperature=0.7)
print(f"需求:{req}")
print(f"AI的代码:\n{code[0]['generated_text']}")
print("=" * 60)
A:AI不会取代程序员,但会使用AI的程序员会取代不会使用AI的程序员。就像计算器没有取代数学家,但会使用计算器的数学家效率更高。
A:小学阶段的数学就够了。重要的是理解“模式识别”“从数据中学习”这些概念,而不是复杂的公式。
A:我们用的都是“预训练模型”,就像用现成的“AI大脑”,不需要自己训练。普通电脑就能运行。
A:现在的AI更像“超级模仿者”——能模仿人类已有作品的风格,但很难有真正的原创思想。真正的创造力还是人类独有的!
A:在特定任务上(如下棋、识别图像),AI已经超过人类。但在综合智能、情感理解、创造力等方面,AI还差得远。AI是“专才”,人类是“通才”。
挑战任务:创建一个综合AI小助手,包含以下功能:
提示:可以使用多个AI管道(pipeline),用if-else判断用户意图。
扩展挑战:
从第1期到第37期,我们和孩子一起:
这就像学武术:
第38期主题:编程思维在生活中的应用
我们将探讨:
特别活动:征集孩子们的作品! 如果你和孩子一起完成了某个项目(无论是小游戏、小程序,还是用编程解决的实际问题),欢迎分享!我们将在最后一期展示优秀作品。
亲爱的家长朋友:
当我们开始这个系列时,很多家长问:“AI时代,孩子还有必要学编程吗?”
现在,经过37期的学习,您的孩子不仅能回答这个问题,甚至能用AI写AI。
编程不是目的,而是一种思维方式:
这些能力,无论在AI时代、还是在任何时代,都是孩子最宝贵的财富。
感谢您37期以来的陪伴和坚持!下期,我们将为这个系列画上圆满的句号。
如果您觉得这期内容有帮助,欢迎分享给其他家长朋友! 有问题或想法?欢迎在评论区交流! 关注我们,一起见证孩子的成长!
下期预告:第38期《编程思维在生活中的应用》——一年编程学习总结与未来规划