InternLM第四期入门岛第2关Python 基础知识

任务一:完成Leetcode 383, 笔记中提交代码与leetcode提交通过截图

解题思路如下:

1.首先,我们需要知道杂志(magazine)中每个字母的出现次数。使用一个长度为26的数组,其中每个位置代表一个英文字母(从'a'到'z')。遍历杂志字符串,对于每个字符,将其转换为小写(以确保不区分大小写),然后增加对应数组位置的计数。

2.遍历赎金信(ransomNote)字符串。对于每个字符,我们同样将其转换为小写,并尝试从之前计算的字符计数中减去该字符的计数(表示我们使用了这个字符)。如果在任何时候,我们尝试减去一个字符的计数,但发现该字符的计数已经是0或负数(表示该字符在杂志中的数量不足以满足赎金信的需求),则我们可以立即断定无法用杂志来构造赎金信,并返回false。如果我们成功遍历了赎金信字符串而没有遇到任何问题(即所有字符的计数都足够),则我们可以断定可以用杂志来构造赎金信,并返回true

解题代码:

运行结果:

任务二:下面是一段调用书生浦语API实现将非结构化文本转化成结构化json的例子,其中有一个小bug会导致报错。请大家自行通过debug功能定位到报错原因并做修正。

获取书生浦语APIKey

然后运行源代码时会报如下错误:

错误信息表明没有openai模块,然后我在代码中加入断点,定位到报错原因。

最后,通过安装openai库,成功解决问题。

pip install openai

修改后的代码为:

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)
res_json = json.loads(res)
print(res_json)

此处我隐藏了自己的APIKey

附笔记:

1.创建虚拟环境

conda create --name myenv python=3.9

创建虚拟环境时我们主要需要设置两个参数,一是虚拟环境的名字,二是python的版本。

2.安装虚拟环境到指定目录

conda create --prefix /root/envs/myenv python=3.9

3..激活虚拟环境

conda activate myenv

4..退出环境,回到默认环境

conda deactivate

5.pip安装包

(1)

pip install <somepackage> # 安装单个包,<somepackage>替换成你要安装的包名
pip install pandas numpy # 安装多个包,如panda和numpy
pip install numpy==2.0 # 指定版本安装
pip install numpy>=1.19,<2.0 # 使用版本范围安装

(2)如果你有一个包含所有依赖信息的requirements.txt文件,可以使用-r一次性安装所有依赖。

pip install -r requirements.txt

(3)安装到指定目录

# 首先激活环境
conda activate /root/share/pre_envs/pytorch2.1.2cu12.1

# 创建一个目录/root/myenvs,并将包安装到这个目录下
mkdir -p /root/myenvs
pip install <somepackage> --target /root/myenvs

# 注意这里也可以使用-r来安装requirements.txt
pip install -r requirements.txt --target /root/myenvs

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值