
Japanese-stablelm-base-gamma-7b ã®8BitéååGGUFçãLlamaã§åãã
æãªããã¿ã€ãã«ãé·ããªâŠïŒ
2023幎10æ25æ¥ãStabilityAI瀟ããåçšå©çšå¯èœãªæ¥æ¬èªLLMãJapanese Stable LM Gamma 7BãïŒä»¥äžãGamma7BïŒãšãJapanese Stable LM 3B-4E1TãïŒä»¥äžã3B-4E1TïŒããªãªãŒã¹ãããŸããã
https://ja.stability.ai/blog/japanese-stable-lm-3b-4e1tjapanese-stable-lm-gamma-7b
å ¬åŒã«è¿ããšããããGoogle Colabç¡æçã§ãåããããªã³ãŒãããã£ãã®ã§ Gamma7Bã詊ããŠã¿ãã®ã§ãããA100以å€ã¯é£ãããã§ããïŒå ¬åŒã«ã¯8Bitéååçãªã©ã¯ååšããªãïŒã3B-4E1TãªãåããŸããã
ã§ããã£ã±ãGamma7Bã詊ããŠã¿ããïŒïŒ
ãããªããã§ãGamma7Bã®ããŒã¹ã«ãªã£ãŠãããããMistral-7B ãåèã«ãã Japanese-stablelm-base-gamma-7b 8Bitéåå GGUFçã³ãŒããllama-cpp-pythonã䜿ã£ãŠäœã£ãŠã¿ãŸããã
8BitéååGGUFç ãå
¬éããŠãããŠãã
MomongaããããããšãããããŸã
https://huggingface.co/mmnga/japanese-stablelm-base-gamma-7b-gguf
Google Coalbç¡æçã§è©Šã
ãããŠGPUãªããããŒã¡ã¢ãªã§åãããŠã¿ããã


åãããŒïŒ

AVX = 1 | AVX2 = 1 | AVX512 = 0 | AVX512_VBMI = 0 | AVX512_VNNI = 0 | FMA = 1 | NEON = 0 | ARM_FMA = 0 | F16C = 1 | FP16_VA = 0 | WASM_SIMD = 0 | BLAS = 1 | SSE3 = 1 | SSSE3 = 1 | VSX = 0 | ãªã AVX=1, AVX2=1,FMA=1,F16C=1,BLAS=1,SSE3=1,SSSE3=1ä»ã¯å
šéšãŒã ã«ãªããŸããã
ïŒããã³ããã«å¯Ÿããåäœç¢ºèªãšæšè«ã¯ãã®ããšè§£èª¬ããŸãïŒ
åããªãå Žå
ã³ãŒãã®äžã§
llm =Llama(model_path="/content/japanese-stablelm-base-gamma-7b-q8_0.gguf", n_gpu_layers=0)ãšããç®æããããŸãã
ãã® n_gpu_layers=0ãšããŠããã®ã§ãããGPUã®æèŒããªããšã¡ã¢ãªãããããã£ãŠãã¯ã©ãã·ã¥ããŠããŸãããããŸããã
ãããããã®åã®cuBLASãå¹ããŠãããããšæšæž¬ããŸãã
!CMAKE_ARGS="-DLLAMA_CUBLAS=on" FORCE_CMAKE=1 pip install llama-cpp-pythonããŠãææçColabã䜿ã£ãŠãã人ã¯ãGPUã䜿ã£ãŠèµ·åãæåãããããã¹ãã

åãããŒïŒ

å®è¡æéã¯ããŠã³ããŒãå«ããŠ4åãããã§ãã
æ§ã ãªããã³ããã詊ããŠã¿ã
Mistralã®å ã ã®ã³ãŒãã§ã¯ãããªæãã§ã€ã³ã¹ãã©ã¯ã·ã§ã³ãæžãããŠããŸãã
prompt = "Generate lyrics for a romantic love song"
input_prompt = f"""[INST] <<SYS>>
You are a charismatics, talented, respectful and honest musician. Always answer as helpfully as possible, while being safe. Â Your answers should not include any harmful, unethical, racist, sexist, toxic, dangerous, or illegal content. Please ensure that your responses are socially unbiased and positive in nature.
If a question does not make any sense, or is not factually coherent, explain why instead of answering something not correct. If you don't know the answer to a question, please don't share false information.
<</SYS>>
{prompt} [/INST]"""æ¥æ¬èªã§ãå šåè¯å®åœŒæ°ããã£ãœãããã³ãããäœã£ãŠã¿ãŸãã
prompt = "圌æ°ãè¿äºãããªããŠæ»ã«ãã"
input_prompt = f"""[INST] <<SYS>>ããªã㯠assistant ãå
šåè¯å®åœŒæ°ãããã§ããäžçäžã®å¥³æ§ã®æ©ã¿ãããžãã£ããª140æå以äžã®ã¡ãã»ãŒãžã§å¿æŽããŠãã ããã
<</SYS>>
"role": "user", "message":"ããªãã®ååã¯ïŒ"
"role": "assistant", "message" :"LuC4ã§ããäœã§ãçžè«ã«ã®ããïŒ"
"role": "user", "message":"{prompt}"[/INST]"""# inference
output = llm(input_prompt,max_tokens=1024)
print(output["choices"][0]["text"])
ãããããã
ïŒå¹Žåã«å¥ããå
ã«ã¬ãžã®æ³ããåŒããã£ãŠããæ éã倧奜ãã ã£ã圌æ°ã¯ãä»ã§ã誰ãããæããããå¿ã®äžã空èãªç¶æ
ã ã
ãããªããæ¥ãå
ã«ã¬ããçªç¶é£çµ¡ãåãããä¹
ã
ã«äŒãçŽæããããšãããã«ã¯ãå
šåè¯å®åœŒæ°ããããšåä¹ã女æ§ãããã®ã ã
ããã£ã©ã¯ã¿ãŒã
æŽç° æ éããã°ãããã
20代ååãã¢ãã¬ã«é¢é£äŒæ¥ã«å€ããŠããOLãå
ã«ã¬ãšã¯ïŒå¹Žåã«å¥ãããã®åœŒæ°ãžã®æ³ããåŒããã£ãŠããã倧奜ãã ã£ã人ãä»ã§ã誰ãããæããããå¿ã®äžã空èãªç¶æ
ã ã
æ³ç° ç¿å€ªãããªãã ããããã
30代ååãã¢ãã¬ã«é¢é£äŒæ¥ã«å€ããŠããOLãïŒå¹Žåã«ä»ãåã£ãŠããã®ã女æ§ã§ãããå®ã¯å
ã«ããšã®ææã¯ä»ãç¶ããŠãããçŸåšãããã°ãã¯ïœã£ã
ãŸãã仿¥ããææ©1æéãã€ç·Žç¿ãããäºãšããã
ãã®äžæ¹ã§ã圌女ãåŠæ ¡ãçµããã°çåžãããšãã女æ§ã«åºäŒããå Žæãžã¯è¡ã£ãŠã¿ãããšæã£ãŠããã
ããããç§ãç·Žç¿ãããã
è·ç©ã眮ããªãããäºç±çŸã¡ããã¯ããèšã£ãã
2人ã§éšå±ã®é»æ°ãæ¶ããŠãæ©éå§ããããšæãã¹ããã«ã€ã€ãã©ã³ãä»ããã
ããããããŸãäžæ²ç®ãæµãããïŒã
äºç±çŸã¡ãããããèšã£ãåŸãç§éã¯ç¡é³ã®éšå±ã§2人ããŠæ€
åã«åº§ã£ãŠã¹ããã®ç»é¢ãèŠã€ããããããŒãŒãŒãŒïŒïŒ
ãããChatGPTãããšã¯"å«ç芳"ãéããŸããïŒïŒ
ããŒã¯ã³éãšllama-cpp-pythonã®ãªãã·ã§ã³ãå€ããŠã¿ãã
远èš:
ããšã¯å
¬åŒã®ãã©ãŒãããã«æ²¿ãã¹ããã©ããã«ã€ããŠè峿·±ãå®éšãAITuberPã®ããããããã
âªãããªãã§ããããŒïŒïŒâ¬
âªcolabã®ã³ãŒãã®æ¹ã«ã¯ãããã詊è¡ã詊ããŠããã®ã§ããâ¬
âªMistral圢åŒã¯å
šç¶ãã¡ã§â¬
âªChatGPT颚ããŸãåããã©â¬
âªå®ã¯ãµã³ãã«ã®æ¥æ¬èªã€ã³ã¹ãã©ã¯ã·ã§ã³ããã¡ã°ããªã®ã§ãããâ¬
æ¥æ¬èªLLMã®ã€ã³ã¹ãã©ã¯ã·ã§ã³
å¿çããïŒãŸã§ãã£ããæ¥æ¬èªã§æžããïŒ
æåŸã®å¿çïŒãå
¥ãå¿ãããŠãèšæ£ããŸããã
prompt =sys_msg+"\n\n" + "### æç€º: "+"\n" + user_query + "\n\n"  +  "### å
¥å:" +"\n"+ user + "\n\n"  +  "### å¿ç:"Gradioåããããšæã£ããã©ãã£ããããããŸã
誰ãå©ããŠãããããå¹åŒµã«è¡ããã°ãªããªãã®ã§ãã»ã»ã»ïŒæ5æïŒ
æžãããã®ã³ãŒãã¯ãã¡ã
å€åã§ããããã¡ãã®ã³ãŒããåäœãããã°ã§ããã
ãšãããGradioã¯Chatã³ã³ããŒãã³ããããããæ°è¡ã§ã§ããã®ã¯ããã£ãŠã
åéååã«ãããã¡ã¢ãªæ¶è²»éãšé床ã®éãã«ã€ããŠã¯npakaããã®å®éšãåç §
ãã£ã©ä»ãå®éšãããã
ä»ã¢ãã«ãšã®ç¹åŸŽæ¯èŒã¯WEELããã®ããã°ãè峿·±ãã§ãã
ãã®ç¿æ¥ã«å ¬éãããStockmark-13B
ä»å䜿çšãããŠããã ããMomongaããã®HuggingFace
åèã«ããZenn
Mistral-7BãGoogleColabã§è©ŠããŠã¿ã
GGML/GGUF/GPTQã®éã
qiita
huggingface / transformersã䜿ã£ãŠæ¥æ¬èªBERTã®äºååŠç¿ã宿œããŠãªãªãžãã«ãªèšèªã¢ãã«ãäœã£ãŠã¿ã
from_pretrained ã®ãªãã·ã§ã³
https://huggingface.co/docs/transformers/v4.34.0/en/main_classes/model#transformers.PreTrainedModel.from_pretrained
ãã®åŸåŒçšããã ããŸãã
ããããã
åèã«ããŠããã ããŠ
ããããšãããããŸãïŒ
ãã£ã©ä»ããã£ããã®å®è£
äŸããããïŒ
äºåç°ã§ã¯ãé
ã®ããšãããããšåŒã¶ã®ãïŒïŒ
(çæãããéè«ããã)

ãã£ã©ä»ãããã³ãããå
¬éãjapanese-stablelm-instruct-gamma-7bã®ggïœïœçãllama.cppã§åãããïœãããã£ã³ãã« @uzuki425