书生闯关L0G2000

 

class Solution(object):
    def canConstruct(self, ransomNote, magazine):
        """
        :type ransomNote: str
        :type magazine: str
        :rtype: bool
        """
        # 统计 magazine 中每个字符的数量
        char_count = {}
        for char in magazine:
            if char in char_count:
                char_count[char] += 1
            else:
                char_count[char] = 1

        # 检查 ransomNote 中的每个字符是否可以在 magazine 中找到
        for char in ransomNote:
            if char in char_count and char_count[char] > 0:
                char_count[char] -= 1
            else:
                return False
        
        return True

# 测试用例
solution = Solution()

ransomNote1 = "a"
magazine1 = "b"
print(solution.canConstruct(ransomNote1, magazine1))  # 输出: False

ransomNote2 = "aa"
magazine2 = "ab"
print(solution.canConstruct(ransomNote2, magazine2))  # 输出: False

ransomNote3 = "aa"
magazine3 = "aab"
print(solution.canConstruct(ransomNote3, magazine3))  # 输出: True
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)
if res:
    print(f"API Response: {res}")  # 打印原始响应内容
    try:
        # 去掉反引号
        res = res.strip('```json\n')
        print(f"Stripped Response: {res}")  # 打印去除反引号后的响应内容
        res_json = json.loads(res)
        print(res_json)
    except json.JSONDecodeError as e:
        print(f"JSON Decode Error: {e}")
        print(f"Response Content: {res}")
        # 逐行打印 JSON 字符串,帮助调试
        for i, line in enumerate(res.split('\n')):
            print(f"Line {i + 1}: {line}")
else:
    print("No response from the API")


API Response: ```json
{
  "model_name": "书生浦语InternLM2.5",
  "developer": "上海人工智能实验室",
  "parameter_versions": ["1.8B", "7B", "20B"],
  "context_length": "1M"
}
```
Stripped Response: {
  "model_name": "书生浦语InternLM2.5",
  "developer": "上海人工智能实验室",
  "parameter_versions": ["1.8B", "7B", "20B"],
  "context_length": "1M"
}
{'model_name': '书生浦语InternLM2.5', 'developer': '上海人工智能实验室', 'parameter_versions': ['1.8B', '7B', '20B'], 'context_length': '1M'}

进程已结束,退出代码为 0
 

转化成结构化json,返回结果多了```json导致bug,删去即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值