我目前正在参加“书生大模型实战营”。这是一个旨在帮助学员掌握大模型开发和应用的实战课程。
为了更好地记录完成过程,我根据官方提供的教程文档提取了核心步骤,并去掉了详细的背景知识介绍和说明,这样后续一个手册查找起来会更加直观。
但建议大家在实际学习过程中还是多看看原文,因为原文档确实非常的详细和完整,方便了解每一步的具体原因和背后的原理,这样有助于更牢固地掌握知识,提高实战能力。
入门岛-第2关
本地环境:Win11。
完成任务步骤记录
任务一:破冰活动:自我介绍
目标:完成Leetcode 383, 笔记中提交代码与leetcode提交通过截图。
完成所需时间:教程推荐20分钟,大概10分钟结束。
步骤:
-
登录Leetcode平台:
- 访问 Leetcode 并完成登录。 如果没有账号直接手机号登录即可。
-
进行答题:
- 通过链接直接进入答题界面,leetcode.cn/problems/ra…
- 本地编写测试后,直接粘贴运行,运行结果通过后,进行提交即可。
class Solution(object):
def canConstruct(self, ransomNote, magazine):
"""
:type ransomNote: str
:type magazine: str
:rtype: bool
"""
# 创建一个字典来记录 magazine 中每个字符的出现次数
char_count = {}
# 记录 magazine 中每个字符的出现次数
for c in magazine:
if c in char_count:
char_count[c] += 1
else:
char_count[c] = 1
# 检查 ransomNote 中的每个字符是否都能从 magazine 中获取
for c in ransomNote:
if c in char_count and char_count[c] > 0:
char_count[c] -= 1
else:
return False
return True
任务二:实践项目:构建个人项目
目标:熟悉VSCode下远程debug python代码。
完成所需时间:10分钟,代码比较简单,但是VSCode确实不太熟悉,差不多10分钟。
步骤:
-
连接SSH: 使用上节课的环境,直接连接上。
-
debug运行: 可以按照教程进行配置,由于之前对VSCode不熟悉,这块比较花费时间。 后续调试比较容易。
from openai import OpenAI
import json
def internlm_gen(prompt,client):
'''
LLM生成函数
Param prompt: prompt string
Param client: OpenAI client
'''
response = client.chat.completions.create(
model="internlm2.5-latest",
messages=[
{"role": "user", "content": prompt},
],
stream=False
)
return response.choices[0].message.content
api_key = ''
client = OpenAI(base_url="https://internlm-chat.intern-ai.org.cn/puyu/api/v1/",api_key=api_key)
content = """
书生浦语InternLM2.5是上海人工智能实验室于2024年7月推出的新一代大语言模型,提供1.8B、7B和20B三种参数版本,以适应不同需求。
该模型在复杂场景下的推理能力得到全面增强,支持1M超长上下文,能自主进行互联网搜索并整合信息。
"""
prompt = f"""
请帮我从以下``内的这段模型介绍文字中提取关于该模型的信息,要求包含模型名字、开发机构、提供参数版本、上下文长度四个内容,以json格式返回。
`{content}`
"""
res = internlm_gen(prompt,client)
# 处理json markdown代码
if res.startswith("```json"):
length = len(res)
res = res[8:length-3]
res_json = json.loads(res)
print(res_json)
任务三:pip安装到指定目录
目标:熟悉pip命令,按照指定目录进行安装。
完成所需时间:10分钟,看过教程,很快就完成了。
步骤:
-
建立文件夹: mkdir -p /root/myenvs
-
安装: 如果没有设置国内镜像,会稍微慢点。 pip install numpy -t /root/myenvs
-
引用: import numpy as np x = np.empty([3,2], dtype = int) print (x)