-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdeepseek.py
43 lines (35 loc) · 7.17 KB
/
deepseek.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# 看图写话
import ollama
import base64
# 看图写话
def image_to_base64(image_path):
with open(image_path, "rb") as image_file:
encoded_string = base64.b64encode(image_file.read()).decode('utf-8')
return encoded_string
def ollama_image_caption(image_path):
client = ollama.Client(host='http://localhost:11434')
# 将图片转换为 base64 编码
base64_image = image_to_base64(image_path)
# 设置提示语,引导模型对图片进行描述
prompt = "根据图写一篇200字的中文作文:"
response = client.generate(
model='deepseek-r1:1.5b', prompt=prompt, images=[base64_image])
return response
# 调用
image_path = "/Users/apple/github/ollama-study/demos/assets/1.png" # 替换为你的图片路径
caption = ollama_image_caption(image_path)
print(caption)
'''
[Running] python -u "/Users/apple/github/ollama-study/demos/deepseek.py"
输出结果:
model='deepseek-r1:1.5b'
created_at='2025-02-12T10:05:29.405577Z'
done=True done_reason='stop'
total_duration=21268322705
load_duration=2351128017
prompt_eval_count=20
prompt_eval_duration=615000000
eval_count=511 eval_duration=18250000000
response='<think>\n好,我现在得帮用户写一个关于“图”的200字中文作文。首先,我要理解用户提供的图片描述。虽然图片没有展示出来,但根据常见的考试题型和作业题目,可能是数学图形或者几何题。\n\n接下来,我需要构思文章的结构。通常来说,一篇200字左右的文章可以分为引言、正文和结论三个部分。引言部分可以用一个具体的事例来引出主题,比如一个同学在图上看到老师帮助他解决问题的情节。这样既生动又容易引起兴趣。\n\n正文部分要详细描述这个故事中的每个关键点。例如,首先,学生发现自己的作业写错了,然后得到老师的指导,老师用简单的方法纠正了错误,最后学生取得进步。这样的叙述能够清晰传达老师对学生帮助的肯定和鼓励。\n\n结论部分可以总结整个故事的价值,强调教师的辛勤和教导的重要性,并呼应开头的话,让文章有一个完整的收尾。同时,要确保语言简洁,不超过200字,保持流畅自然。\n\n如果图片中的图是一个具体的例子,比如数学中的几何问题或者物理中的力的分解,我需要选择一个能够展示帮助和进步的例子来展开叙述。这样不仅符合题意,也容易让读者理解。\n\n最后,检查一下整个作文是否符合要求,确保语言准确,结构合理,字数合适。如果有不清楚的地方,可以多读几遍或与同学讨论,确认无误后再提交。\n</think>\n\n## 例说老师眼中的"差"学生成色如花\n \n 有一次,我在数学作业上看到一道题的运算步骤写得马虎潦草:2987+4503=3462。我灵机一动,心想:“老师,这个题目是不是我抄错了数字?”于是,我把纸巾折了个大弧线,指着老师说:"我就是这么看着,你的眼神真深邃!"\n \n 老师愣了一下,立刻严肃地说:"你来重新检查一遍这道题。"我认真地把作业仔细检查了一遍,发现我写的步骤完全正确,只是抄写时的笔势不自然。我犯了一个低级错误,却让老师露出欣慰的笑容。\n \n 这场意外的经历让我明白:教育是一门细碎的工程,每一个看似微小的失误都可能引发老师的严厉批评,而真正能改变一个人命运的事例,往往来自于细节中的坚持与努力。'
context=[151644, 58, 1892, 12, 15, 2533, 100345, 28029, 61443, 101555, 17, 15, 15, 18600, 9370, 104811, 104745, 5122, 151645, 151648, 198, 52801, 3837, 107520, 49828, 99663, 20002, 61443, 46944, 101888, 2073, 28029, 97907, 17, 15, 15, 18600, 104811, 104745, 1773, 101140, 3837, 104515, 101128, 20002, 103008, 45930, 53481, 1773, 103925, 45930, 80443, 101987, 99898, 3837, 77288, 100345, 102716, 103960, 33872, 24300, 33108, 104147, 106367, 3837, 104560, 104552, 111132, 100631, 111867, 33872, 3407, 104326, 3837, 35946, 85106, 118444, 82025, 9370, 100166, 1773, 102119, 99883, 3837, 101555, 17, 15, 15, 18600, 101081, 106096, 73670, 102239, 72586, 77144, 5373, 110644, 33108, 106073, 101124, 99659, 1773, 72586, 77144, 99659, 106782, 46944, 100398, 104140, 26355, 36407, 72586, 20221, 100220, 3837, 101912, 46944, 101181, 18493, 28029, 17447, 101038, 101049, 100364, 42411, 107124, 101747, 55502, 1773, 99654, 99929, 106267, 99518, 100047, 100771, 100565, 3407, 110644, 99659, 30534, 100700, 53481, 99487, 101108, 101047, 103991, 99936, 27442, 1773, 77557, 3837, 101140, 3837, 99720, 99879, 100005, 104147, 61443, 106670, 3837, 101889, 101051, 108434, 101086, 3837, 101049, 11622, 100405, 104339, 109733, 34187, 32100, 3837, 100161, 99720, 101094, 101300, 1773, 101893, 114221, 100006, 104542, 107707, 101049, 113615, 100364, 9370, 100736, 33108, 104125, 3407, 106073, 99659, 73670, 102050, 101908, 101108, 105817, 3837, 104046, 103938, 9370, 115115, 33108, 110927, 106508, 90395, 116867, 111749, 100363, 3837, 99258, 82025, 104133, 105896, 50009, 101143, 1773, 91572, 3837, 30534, 103944, 102064, 110485, 3837, 106070, 17, 15, 15, 18600, 3837, 100662, 110205, 99795, 3407, 62244, 45930, 101047, 28029, 101909, 108247, 103358, 3837, 101912, 104552, 101047, 111867, 86119, 100631, 102462, 101047, 47534, 9370, 107799, 3837, 35946, 85106, 50404, 46944, 100006, 101987, 100364, 33108, 101300, 111564, 36407, 104324, 114221, 1773, 99654, 99902, 101137, 33872, 36589, 3837, 74763, 100047, 99258, 104785, 101128, 3407, 100161, 3837, 101071, 100158, 101908, 104745, 64471, 101137, 101882, 3837, 103944, 102064, 102188, 3837, 100166, 100745, 3837, 18600, 8863, 100968, 1773, 107055, 107027, 103958, 3837, 73670, 42140, 57553, 99195, 100094, 57191, 57218, 101181, 104075, 3837, 81167, 42192, 29056, 107646, 71971, 8997, 151649, 271, 565, 220, 26355, 36587, 101049, 99246, 101047, 1, 99572, 1, 47764, 43959, 38035, 29524, 99232, 26809, 220, 108033, 3837, 104786, 104552, 104147, 17447, 101038, 104511, 33872, 9370, 118274, 105652, 61443, 49828, 99313, 100422, 121677, 99808, 5122, 17, 24, 23, 22, 10, 19, 20, 15, 18, 28, 18, 19, 21, 17, 1773, 35946, 99677, 32648, 14777, 27733, 3837, 108954, 36987, 101049, 3837, 99487, 106367, 104074, 35946, 102867, 106670, 82587, 81264, 101959, 3837, 110267, 100050, 103203, 99699, 106352, 26288, 108718, 43268, 3837, 112014, 101049, 36587, 40727, 35946, 99486, 99899, 101952, 3837, 56568, 109563, 88051, 99194, 121945, 6313, 698, 715, 8908, 222, 223, 99235, 107399, 104781, 3837, 104770, 106625, 104812, 40727, 56568, 36407, 70361, 101071, 107060, 43288, 44793, 33872, 1773, 1, 35946, 101131, 29490, 99360, 104147, 104857, 101071, 116320, 3837, 99879, 35946, 107548, 105652, 100372, 88991, 3837, 100009, 102867, 61443, 13343, 9370, 100041, 99272, 16530, 99795, 1773, 35946, 100238, 104059, 99285, 52334, 32100, 3837, 99786, 99258, 101049, 105722, 114492, 110247, 8997, 715, 32181, 247, 82224, 104424, 109025, 104029, 101265, 5122, 99460, 99639, 64689, 99338, 100508, 9370, 99655, 3837, 104367, 106390, 48934, 30709, 9370, 108452, 71268, 87267, 102361, 108434, 103470, 105158, 3837, 68536, 100690, 26232, 101933, 101977, 102606, 104140, 26355, 3837, 101207, 107936, 104449, 101047, 100356, 57218, 101066, 1773]
'''