ymcui / Chinese-LLaMA-Alpaca-3

中文羊驼大模型三期项目 (Chinese Llama-3 LLMs) developed from Meta Llama 3
Apache License 2.0
1.75k stars 151 forks source link

llama3的分词器 #77

Closed ymourenya closed 4 months ago

ymourenya commented 5 months ago

提交前必须检查以下项目

问题类型

其他问题

基础模型

Llama-3-Chinese-8B(基座模型)

操作系统

None

详细描述问题

# 请在此处粘贴运行代码(请粘贴在本代码块里)

from transformers import AutoTokenizer

选择一个支持中文的预训练模型

tokenizer = AutoTokenizer.from_pretrained("llama3")

定义要分词的文本

text = "Java是一种广泛使用的高级编程语言,具有可移植性和面向对象的特性。为了方便使用和管理Java语言,有一些常用的Java编程工具。以下是5个常用的Java编程工具以及它们的详细介绍。"

对文本进行分词

tokens = tokenizer.tokenize(text) token_ids = tokenizer.convert_tokens_to_ids(tokens)

输出分词后的 token 和 token id

print("Tokens:", tokens)

print("Token IDs:", token_ids)

依赖情况(代码类问题务必提供)

# 请在此处粘贴依赖情况(请粘贴在本代码块里)

运行日志或截图

![图片](https://github.com/ymcui/Chinese-LLaMA-Alpaca-3/assets/126037097/9df9f8e1-a846-4400-abe8-465df895ce28))
你好,我想问一下,为什么llama3对中文分词是这样的,希望各位大佬帮忙解答一下,谢谢大佬们
ymourenya commented 5 months ago

对中文分词是这样的 Tokens: ['Java', 'æĺ¯ä¸Ģ', 'ç§į', '广', 'æ³Ľ', '使çĶ¨', 'çļĦ', 'é«ĺ', '级', 'ç¼ĸ', 'ç¨ĭ', 'è¯Ńè¨Ģ', 'ï¼Į', 'åħ·æľī', 'åı¯', '移', 'æ¤į', 'æĢ§', 'åĴĮ', 'éĿ¢', 'åIJij', '对象', 'çļĦ', 'çī¹', 'æĢ§', 'ãĢĤ', '为äºĨ', 'æĸ¹', '便', '使çĶ¨', 'åĴĮ', '管çIJĨ', 'Java', 'è¯Ńè¨Ģ', 'ï¼Įæľī', 'ä¸ĢäºĽ', '常', 'çĶ¨çļĦ', 'Java', 'ç¼ĸ', 'ç¨ĭ', 'å·¥åħ·', 'ãĢĤ', '以ä¸ĭ', 'æĺ¯', '5', '个', '常', 'çĶ¨çļĦ', 'Java', 'ç¼ĸ', 'ç¨ĭ', 'å·¥åħ·', '以åıĬ', 'å®ĥ们', 'çļĦ', '详', 'ç»Ĩ', 'ä»ĭç»į', 'ãĢĤ']

ymcui commented 5 months ago

这种情况正常。分词并不是说一定要按汉字的切分方式进行拆分,和分词器的属性有关系。

github-actions[bot] commented 5 months ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your consideration.

github-actions[bot] commented 4 months ago

Closing the issue, since no updates observed. Feel free to re-open if you need any further assistance.