오픈 소스 LLM 용지 구현 :
재 반복 : (임의로) 긴 텍스트의 대화식 생성 .
[종이] [arxiv] [huggingface] [오프전]
변압기의 고정 크기 컨텍스트는 GPT 모델을 임의로 긴 텍스트를 생성 할 수 없게 만듭니다. 이 논문에서, 우리는 RNN에서 재발 메커니즘의 언어 기반 시뮬 라 크럼 인 RecurrentGpt를 소개합니다. RecurrentGpt는 Chatgpt와 같은 LLM (Large Language Model)에 구축되며 자연 언어를 사용하여 LSTM의 긴 단기 메모리 메커니즘을 시뮬레이션합니다. 각 타임 스텝에서 REPURRENTGPT는 텍스트 단락을 생성하고 하드 드라이브 및 프롬프트에 각각 저장된 언어 기반 장거리 용어 메모리를 업데이트합니다. 이 재발 메커니즘을 통해 재발은 잊지 않고 임의의 길이의 텍스트를 생성 할 수 있습니다. 인간 사용자는 자연어 기억을 쉽게 관찰하고 편집 할 수 있으므로 RepurrentGPT는 해석 가능하며 대화식 긴 텍스트를 생성 할 수 있습니다. RecurrentGpt는 로컬 편집 제안을 넘어 차세대 컴퓨터 보조 작문 시스템을 향한 초기 단계입니다. AIGC (AI-GENERATED CONTER)를 생성하는 것 외에도 재발 렌트를 소비자와 직접 상호 작용하는 대화식 소설로 사용할 가능성을 보여줍니다. 우리는``ai as aiac '(AIAC)에 의해 생성 모델의 사용을 불러냅니다. 이는 다음 형태의 기존 AIGC라고 생각합니다. 우리는 또한 재발용 GPT를 사용하여 작가와 상호 작용하는 대신 독자와 직접 상호 작용하는 개인화 된 대화식 소설을 만들 수있는 가능성을 보여줍니다. 보다 광범위하게, RecurrentGpt는인지 과학에서 인기있는 모델 디자인에서 아이디어를 빌릴 수있는 유용성을 보여줍니다.
변압기 的固定尺寸上下文使得 gpt 的固定尺寸上下文使得 的固定尺寸上下文使得, 我们介绍了 reburrentgpt, 一个基于语言的模拟 rnns 中的递归机制。Rnns 中的递归机制。recurrentgpt 建立在大型语言模型 建立在大型语言模型 建立在大型语言模型 建立在大型语言模型 建立在大型语言模型 建立在大型语言模型 建立在大型语言模型 (llm) 之上, 如 chatgpt, 并使用自然语言来模拟 lstm 中的长短时记忆机制。在每个时间段, reburrentgpt 生成一段文字, 并更新其基于语言的长短时记忆, 分别存储在硬盘和提示器上。这种递归机 分别存储在硬盘和提示器上。这种递归机制使 recurrentgpt 能够生成任意长度的文本而不被遗忘。由于人类用户可以很容易地观察和编辑自然语言记忆 能够生成任意长度的文本而不被遗忘。由于人类用户可以很容易地观察和编辑自然语言记忆, 因此 recurrentgpt 是可解释的, 并能互动地生成长文本。recurrentgpt 是朝着超越本地编辑建议的下一代计算机辅助写作系统迈出的第一步。除了制作人工智能生成的内容 − (aigc), 我们还展示了使用 repurrentgpt 作为直接与消费者互动的互动小说的可能性。我们称这种生成模型的使用为"ai as as contents"(aiac), 我们认为这是传统 aigc 的下一个形式。我们进一步展示了使用 recurrentgpt 创造个性化互动小说的可能性 创造个性化互动小说的可能性, 这种小说直接与读者互动, 而不是与作者互动。更广泛地说, repurrentgpt 证明了从认知科学和深度学习中流行的模型设计中借用思想来提示 llm 的效用。
pip install transformers@git+https://github.com/huggingface/transformers.git
pip install peft@git+https://github.com/huggingface/peft.git
pip install accelerate@git+https://github.com/huggingface/accelerate.git
pip install bitsandbytes==0.39.0
pip install -U flagai
pip install bminf
[Global_Config.py]
lang_opt = "zh" # zh or en. make English or Chinese Novel
llm_model_opt = "openai" # default is openai, it also can be other open-source LLMs as below
OpenAI API 키를 먼저 적용해야합니다. 그 다음에
export OPENAI_API_KEY = "your key"
Vicuna 모델을 다운로드하십시오. 모델/vicuna_bin.py로 구성하십시오
tokenizer = AutoTokenizer . from_pretrained ( model_name_or_path , trust_remote_code = True )
model_config = AutoConfig . from_pretrained ( model_name_or_path , trust_remote_code = True )
model = AutoModel . from_pretrained ( model_name_or_path , config = model_config , trust_remote_code = True ) tokenizer = AutoTokenizer . from_pretrained ( "baichuan-inc/baichuan-7B" , trust_remote_code = True )
model = AutoModelForCausalLM . from_pretrained ( "baichuan-inc/baichuan-7B" , device_map = "auto" , trust_remote_code = True ) loader = AutoLoader (
"lm" ,
model_dir = state_dict ,
model_name = model_name ,
use_cache = True ,
fp16 = True )
model = loader . get_model ()
tokenizer = loader . get_tokenizer ()
model . eval ()BMINF를 사용하려면 다음과 같이 코드를 추가하십시오.
with torch . cuda . device ( 0 ):
model = bminf . wrapper ( model , quantization = False , memory_limit = 2 << 30 ) python gradio_server.py

이 프로젝트가 개발 시간을 줄이는 데 도움이되면 커피 한 잔을 줄 수 있습니다 :)
Alipay (支付宝)

wechatpay (p)

MIT © Kun