大模型读书报告

大模型通过统计学习与深度神经网络的结合,实现了从数据中提取复杂模式的能力,其发展史反映了算力、算法和数据的协同进化。
尽管已取得显著进展,但其本质仍是经验驱动的“黑箱”,未来需在理论突破、多模态融合、伦理治理等方面持续探索。
从2021年至今人们已经开发诸多大模型比如Kimihttps://kimi.moonshot.cn/chat/cv1vgvq1ol7qbte8dvug等等。
不同的大模型都有不同的优势和缺陷,在使用时也有相应的技巧和方法。
下面以用python生成五星红旗为例说明;
对话:用python海龟绘图画一面五星红旗,画布为480*480

  1. Kimi
点击查看代码
`import turtle

# 设置画布大小和背景色
turtle.setup(480, 480)
turtle.bgcolor("white")  # 背景颜色为白色

# 设置绘图速度
turtle.speed(10)

# 绘制旗面(红色矩形)
def draw_rectangle():
    rectangle = turtle.Turtle()
    rectangle.hideturtle()
    rectangle.penup()
    rectangle.goto(-240, 240)  # 旗面左上角
    rectangle.color("red")
    rectangle.begin_fill()
    for _ in range(2):
        rectangle.forward(480)  # 旗面宽度
        rectangle.right(90)
        rectangle.forward(300)  # 旗面高度(3:2比例)
        rectangle.right(90)
    rectangle.end_fill()

# 绘制五角星
def draw_star(size, x, y, angle):
    star = turtle.Turtle()
    star.hideturtle()
    star.penup()
    star.goto(x, y)
    star.setheading(angle)
    star.color("yellow")
    star.begin_fill()
    for _ in range(5):
        star.forward(size)
        star.right(144)
    star.end_fill()

# 主函数
def main():
    draw_rectangle()  # 绘制旗面

    # 绘制主星(大星)
    large_star_size = 30  # 大星边长
    large_star_x = -144  # 旗面左上角横向五等分之一
    large_star_y = 180   # 旗面上边缘向下五等分之一
    draw_star(large_star_size, large_star_x, large_star_y, 162)  # 旋转角度调整

    # 绘制副星(小星)
    small_star_size = 10
    small_star_angle = 90  # 小星旋转角度调整
    
    # 第一颗小星
    draw_star(small_star_size, -15, 200, small_star_angle)
    
    # 第二颗小星
    draw_star(small_star_size, -25, 150, small_star_angle)
    
    # 第三颗小星
    draw_star(small_star_size, -5, 100, small_star_angle)
    
    # 第四颗小星
    draw_star(small_star_size, -35, 50, small_star_angle)

    turtle.done()

main()`
2.豆包
点击查看代码
`import turtle

# 设置画布大小为正方形,满足1:1比例
turtle.setup(width=800, height=800)

# 创建画笔对象
pen = turtle.Turtle()
pen.speed(2)  # 设置绘图速度

# 绘制红色背景
pen.begin_fill()
pen.fillcolor("red")
pen.pencolor("red")
pen.goto(400, 400)
pen.goto(-400, 400)
pen.goto(-400, -400)
pen.goto(400, -400)
pen.goto(400, 400)
pen.end_fill()

# 绘制大五角星
pen.penup()
pen.goto(-270, 180)
pen.pendown()
pen.begin_fill()
pen.fillcolor("yellow")
pen.pencolor("yellow")
for _ in range(5):
    pen.forward(150)
    pen.right(144)
pen.end_fill()

# 计算小星星的位置和绘制小星星
star_positions = [
    (-120, 240),  # 第一颗小星星的位置
    (-120, 180),  # 第二颗小星星的位置
    (-120, 120),  # 第三颗小星星的位置
    (-60, 150)   # 第四颗小星星的位置
]

for pos in star_positions:
    pen.penup()
    pen.goto(pos)
    pen.pendown()
    pen.begin_fill()
    pen.fillcolor("yellow")
    pen.pencolor("yellow")
    for _ in range(5):
        pen.forward(50)
        pen.right(144)
    pen.end_fill()

# 隐藏画笔
pen.hideturtle()

# 保持绘图窗口显示
turtle.done()`
3.Deep seek
点击查看代码
`import turtle
import math

# 初始化设置
screen = turtle.Screen()
screen.setup(480, 480)  # 正方形画布
screen.title("五星红旗 480x480")
screen.bgcolor("#ff0000")  # 标准国旗红
pen = turtle.Turtle()
pen.speed(10)
pen.hideturtle()

# ===== 五角星绘制函数 =====
def draw_star(size, angle_offset=0):
    """绘制标准五角星
    size: 外接圆半径
    angle_offset: 旋转偏移(控制小星指向)
    """
    pen.pendown()
    pen.begin_fill()
    for _ in range(5):
        pen.forward(size * math.sin(math.radians(72)))
        pen.right(144)
        pen.forward(size * math.sin(math.radians(72)))
        pen.left(72 + angle_offset)
    pen.end_fill()
    pen.penup()

# ===== 主程序 =====
# 大星参数(按画布比例缩放)
main_radius = 29          # 外接圆半径(原标准比例计算)
main_position = (-144, 96)  # 坐标定位左上1/4区域

# 绘制大星(正立无旋转)
pen.penup()
pen.goto(main_position)
pen.setheading(90)
pen.color("#ffff00", "#ffff00")  # 标准五星黄
draw_star(main_radius)

# 小星参数
small_radius = main_radius//3   # 半径比例1:3
circle_radius = main_radius*1.25  # 分布圆半径
angle_offset = 30              # 小星指向修正角

# 四小星极坐标参数(弧度制)
positions = [
    (math.radians(56), 0.24),   # 第1颗(角度,半径比例)
    (math.radians(33), 0.26),
    (math.radians(10), 0.27),
    (math.radians(-13), 0.28)   # 第4颗(微调半径避免重叠)
]

# 绘制四颗小星
for angle, radius_scale in positions:
    # 计算实际分布半径
    r = circle_radius * radius_scale
    
    # 极坐标转笛卡尔坐标
    x = main_position[0] + r * math.cos(angle)
    y = main_position[1] - r * math.sin(angle)  # y轴取反
    
    # 计算指向角度(几何修正)
    target_angle = math.degrees(math.atan2(
        main_position[1] - y,
        main_position[0] - x
    )) - 90
    
    pen.penup()
    pen.goto(x, y)
    pen.setheading(target_angle + angle_offset)
    pen.color("#ffff00", "#ffff00")
    draw_star(small_radius, angle_offset=-angle_offset)

# 完成绘制
turtle.done()`
可见三者生成的结果都未能达到预期,此时就需要用户提出更细致的需求和更多已有的条件,来优化生成的代码。

例如:比例,初始坐标,位置,大小等关键词。
通过不断输入关键词和条件,最终我使用大模型Kimi来生成五星红旗;

点击查看代码
`import turtle
import math

def draw_star(t, size):
    """绘制五角星,size为边长,自动根据海龟方向调整顶点指向"""
    t.begin_fill()
    for _ in range(5):
        t.forward(size)
        t.right(144)
    t.end_fill()

def draw_china_flag():
    screen = turtle.Screen()
    screen.setup(640, 480)  # 设置画布尺寸为640x480
    #screen.title("五星红旗")
    
    t = turtle.Turtle()
    t.speed(10)
    t.penup()

    # 绘制红色背景
    t.goto(-320, 240)  # 左上角坐标
    t.pendown()
    t.color("red")
    t.begin_fill()
    for _ in range(2):  # 绘制矩形
        t.forward(640)
        t.right(90)
        t.forward(480)
        t.right(90)
    t.end_fill()

    # 大五角星参数
    big_star_center_y = 100  # 再向下移动后的坐标

    # 绘制大星
    t.penup()
    t.goto(-192, big_star_center_y)  # 调整大星的y坐标
    t.color("yellow")
    t.setheading(90)  # 设置海龟朝上
    t.right(18)       # 旋转海龟以调整五角星方向,使顶点朝上
    t.pendown()
    draw_star(t, 80)  # 大星边长保持为80

    # 四颗小星参数
    small_star_size = 30  # 小星边长
    small_star_centers = [
        (-120, 200),   # 小星1的中心坐标
        (-80, 160),    # 小星2的中心坐标
        (-80, 80),     # 小星3的中心坐标
        (-120, 40)     # 小星4的中心坐标
    ]

    # 绘制四颗小星
    angle_offsets = [15, 30, 45, 60]  # 每个小星相对于大星的角度偏移
    for i, (x, y) in enumerate(small_star_centers):
        t.penup()
        t.goto(x, y)
        # 计算小星的旋转角度,使其一个顶点指向大星中心
        dx = -192 - x
        dy = big_star_center_y - y
        angle = math.degrees(math.atan2(dy, dx))
        t.setheading(angle - angle_offsets[i])  # 调整角度偏移
        t.pendown()
        draw_star(t, small_star_size)

    t.hideturtle()
    turtle.done()

draw_china_flag()`
![](https://img2024.cnblogs.com/blog/3608895/202503/3608895-20250302154931946-892328084.png)

总结
使用大模型时,清晰准确地描述需求是关键,可提供背景信息、示例辅助理解。

还应尝试不同提问角度挖掘答案,对复杂任务进行拆解,学会评估生成内容,以获更优结果。

posted @ 2025-03-02 15:49  bolun123  阅读(32)  评论(0)    收藏  举报