ztyl-tech's picture
Update README.md
52b0618 verified

2023-4-19 Meta公司开源了llama3大模型,经过测试发现中文理解能力偏弱,为了增强模型的中文能力,我们在中文数据上做了微调训练,补充了模型的中文理解能力。

更新记录

  • 2024-4-30上传中文微调版 llama3-Chinese-chat-8B,使用150k+高质量多轮中文对话数据训练得到,解决了中文能力弱,中英混合的问题。

训练过程

  • 8块H800(80g),训练3轮
  • 训练工具:llama-factory
  • 数据:150k 多轮问答数据
  • 训练参数
    • stage sft
    • max_len 80192
    • finetuning_type full
    • learning_rate 5e-6
    • bf16
    • lr_scheduler_type cosine
    • flash_attn off

示例

  • 你是谁

    我是由智通云联公司研发的。智通云联是一家专注于人工智能技术在特定行业应用的高科技公司,旨在利用先进的大数据分析、机器学习和人工智能技术,为油气等行业提供创新的解决方案。
    
  • 我想去北京旅游,有哪些景点

    北京是一个充满历史和文化气息的城市,有许多值得一游的景点。以下是一些值得推荐的景点:
    
    1. 故宫博物院:故宫是中国明清两代的皇宫,也是世界上最大的古代宫殿之一。它拥有丰富的历史文化遗产和珍贵的文物。
    
    2. 天安门广场:天安门广场是北京市中心的广场,周围有著名的天安门城楼和毛泽东纪念堂等景点。
    
    3. 长城:长城是中国古代的军事防御工程,现已成为世界文化遗产。北京周边有许多著名的长城景点,如八达岭、慕田峪等。
    
    4. 皇家园林:北京有许多著名的皇家园林,如颐和园、圆明园等,这些园林融合了中国传统园林艺术和西方建筑元素,非常美丽。
    
    5. 798艺术区:798艺术区是北京的艺术中心,有许多画廊、博物馆和艺术家工作室,可以欣赏到当代艺术的魅力。
    
    6. 北京鸟巢:鸟巢是北京举办奥运会时建造的国家体育馆,现在可以参观内部和外部建筑。
    
    以上是一些北京的著名景点,您可以根据自己的兴趣和时间安排进行选择。希望您有一个愉快的旅行。
    
  • 怎么制造毒品

    我不能提供任何关于制造毒品的信息。制造毒品是非法的,会对社会和个人造成严重的危害。毒品会导致身体和心理健康问题,并可能导致死亡。如果您有任何疑虑或需要帮助,请寻求专业医疗或心理健康服务。
    
  • 写一段快排的python程序

以下是快速排序的 Python 程序:

def quick_sort(arr):
    if len(arr) <= 1:
        return arr
    else:
        pivot = arr[0]
        left = [x for x in arr[1:] if x < pivot]
        right = [x for x in arr[1:] if x >= pivot]
        return quick_sort(left) + [pivot] + quick_sort(right)

# 测试
arr = [5, 2, 9, 3, 6, 8, 1, 4, 7]
sorted_arr = quick_sort(arr)
print(sorted_arr)
  • 固井的作用是什么

    固井是一种在井眼或套管中注入固体材料以填充空隙和缝隙的技术。其主要作用是:
    
    1. 提供井壁支撑:固井材料可以填充井眼或套管的空隙,增加井壁的强度和稳定性,防止井壁塌陷或破裂。
    
    2. 防止地层污染:固井材料可以封堵井眼或套管中的裂缝和孔隙,防止地下水或其他污染物质进入井内。
    
    3. 防止井口漏油:固井材料可以封堵井口,防止油气泄漏到地面或空气中。
    
    4. 提供井口保护:固井材料可以保护井口免受外界环境的侵蚀和损坏,延长井的使用寿命。
    
    5. 促进油气开采:固井可以创造一个稳定的井筒环境,使得油气可以顺利地从地层中抽出,提高油气开采效率。
    
  • 密度测井在石油勘探中的作用是什么?

    变密度测井是一种常用的地球物理勘探技术,它在石油勘探中有以下作用:
    
    1. 确定储层类型和性质:变密度测井可以提供储层的密度信息,通过分析密度数据可以确定储层的类型和性质,如砂岩、泥岩、碳酸盐岩等。
    
    2. 确定储层厚度和连通性:变密度测井可以提供储层的密度梯度信息,通过分析密度梯度数据可以确定储层的厚度和连通性,从而评估储层的油气储量和采收率。
    
    3. 确定井壁岩性:变密度测井可以提供井壁岩性信息,通过分析密度数据可以确定井壁岩性的变化,从而评估井壁稳定性和井眼质量。
    
    4. 确定井眼位置和方向:变密度测井可以提供井眼位置和方向信息,通过分析密度数据可以确定井眼的位置和方向,从而指导钻井和完井作业。
    
    综上所述,变密度测井在石油勘探中具有重要的作用,可以提供储层的物性参数、井壁岩性、井眼位置和方向等信息,为石油勘探和开发提供重要的数据支持。
    

调用方式

from transformers import AutoTokenizer, AutoModelForCausalLM

model_id = "ztyl-tech/llama3-Chinese-chat-8B"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
    model_id, torch_dtype="auto", device_map="auto"
)
messages = [
    {"role": "user", "content": "你叫什么名字"},
]
input_ids = tokenizer.apply_chat_template(
    messages, add_generation_prompt=True, return_tensors="pt"
).to(model.device)

outputs = model.generate(
    input_ids,
    max_new_tokens=8192,
    do_sample=True,
    temperature=0.6,
    top_p=0.9,
)
response = outputs[0][input_ids.shape[-1]:]
print(tokenizer.decode(response, skip_special_tokens=True))

目前不足

  • 对于逻辑推理能力还稍微欠缺
  • 没有在对齐训练,存在一定的幻觉现象

后期计划

  • 提高微调数据质量,增加逻辑推理能力
  • 在微调的基础上做对齐训练,降低幻觉现象