From 23fa92bec0dd9d0b2bc6c3c819177937e6819a3b Mon Sep 17 00:00:00 2001 From: Ettore Di Giacinto Date: Wed, 22 May 2024 22:42:41 +0200 Subject: [PATCH] models(gallery): add hercules and helpingAI (#2376) Signed-off-by: Ettore Di Giacinto --- gallery/chatml-hercules.yaml | 64 ++++++++++++++++++++++++++++++++++++ gallery/index.yaml | 57 ++++++++++++++++++++++++++++++-- 2 files changed, 119 insertions(+), 2 deletions(-) create mode 100644 gallery/chatml-hercules.yaml diff --git a/gallery/chatml-hercules.yaml b/gallery/chatml-hercules.yaml new file mode 100644 index 00000000..c1036789 --- /dev/null +++ b/gallery/chatml-hercules.yaml @@ -0,0 +1,64 @@ +--- +name: "chatml-hercules" + +config_file: | + mmap: true + function: + # disable injecting the "answer" tool + disable_no_action: true + + grammar: + # This allows the grammar to also return messages + mixed_mode: true + + return_name_in_function_response: true + # Without grammar uncomment the lines below + # Warning: this is relying only on the capability of the + # LLM model to generate the correct function call. + json_regex_match: + - "(?s)<|im_start|>call(.*?)<|im_end|>" + - "(?s)<|im_start|>call(.*?)" + replace_function_results: + # Replace everything that is not JSON array or object + - key: '(?s)^[^{\[]*' + value: "" + - key: '(?s)[^}\]]*$' + value: "" + - key: "'([^']*?)'" + value: "_DQUOTE_${1}_DQUOTE_" + - key: '\\"' + value: "__TEMP_QUOTE__" + - key: "\'" + value: "'" + - key: "_DQUOTE_" + value: '"' + - key: "__TEMP_QUOTE__" + value: '"' + template: + chat_message: | + <|im_start|>{{ if .FunctionCall -}}call{{else if eq .RoleName "tool"}}function{{else}}{{ .RoleName }}{{end}} + {{ if .Content -}} + {{.Content }} + {{ end -}} + {{ if .FunctionCall -}} + {{toJson .FunctionCall}} + {{ end -}}<|im_end|> + function: | + <|im_start|>system + You are a function calling AI model. You are provided with functions to execute. You may call one or more functions to assist with the user query. Don't make assumptions about what values to plug into functions. Here are the available tools: + {{range .Functions}} + {'type': 'function', 'function': {'name': '{{.Name}}', 'description': '{{.Description}}', 'parameters': {{toJson .Parameters}} }} + {{end}} + For each function call return a json object with function name and arguments + <|im_end|> + {{.Input -}} + chat: | + {{.Input -}} + <|im_start|>assistant + completion: | + {{.Input}} + context_size: 4096 + stopwords: + - '<|im_end|>' + - '' + - '' diff --git a/gallery/index.yaml b/gallery/index.yaml index 91a295c7..4a258eef 100644 --- a/gallery/index.yaml +++ b/gallery/index.yaml @@ -2,7 +2,7 @@ ### START mudler's LocalAI specific-models - &mudler url: "github:mudler/LocalAI/gallery/mudler.yaml@master" - name: "localAI-llama3-8b-function-call-v0.2" + name: "LocalAI-llama3-8b-function-call-v0.2" icon: "https://cdn-uploads.huggingface.co/production/uploads/647374aa7ff32a81ac6d35d4/us5JKi9z046p8K-cn_M0w.webp" license: llama3 description: | @@ -18,6 +18,7 @@ - gpu - cpu - llama3 + - function-calling overrides: parameters: model: LocalAI-Llama3-8b-Function-Call-v0.2-q4_k_m.bin @@ -766,6 +767,7 @@ - filename: Llama-3-8B-Instruct-DPO-v0.3.Q4_K_M.gguf sha256: 694c55b5215d03e59626cd4292076eaf31610ef27ba04737166766baa75d889f uri: huggingface://MaziyarPanahi/Llama-3-8B-Instruct-DPO-v0.3-32k-GGUF/Llama-3-8B-Instruct-DPO-v0.3.Q4_K_M.gguf +### Start Yi - &yi-chat url: "github:mudler/LocalAI/gallery/chatml.yaml@master" icon: "https://raw.githubusercontent.com/01-ai/Yi/main/assets/img/Yi_logo_icon_light.svg" @@ -1089,6 +1091,52 @@ - filename: llava-llama-3-8b-v1_1-mmproj-f16.gguf sha256: eb569aba7d65cf3da1d0369610eb6869f4a53ee369992a804d5810a80e9fa035 uri: huggingface://xtuner/llava-llama-3-8b-v1_1-gguf/llava-llama-3-8b-v1_1-mmproj-f16.gguf +### ChatML +- url: "github:mudler/LocalAI/gallery/chatml.yaml@master" + name: "helpingai-9b" + license: hsul + icon: https://huggingface.co/OEvortex/HelpingAI-3B/resolve/main/HelpingAI.png + description: | + HelpingAI-9B is a large language model designed for emotionally intelligent conversational interactions. It is trained to engage users with empathy, understanding, and supportive dialogue across a wide range of topics and contexts. The model aims to provide a supportive AI companion that can attune to users' emotional states and communicative needs. + urls: + - https://huggingface.co/OEvortex/HelpingAI-9B + - https://huggingface.co/nold/HelpingAI-9B-GGUF + tags: + - llm + - gguf + - gpu + - cpu + - chatml + overrides: + context_size: 4096 + parameters: + model: HelpingAI-9B_Q4_K_M.gguf + files: + - filename: HelpingAI-9B_Q4_K_M.gguf + sha256: 9c90f3a65332a03a6cbb563eee19c7586d9544f646ff9f33f7f1904b3d415ae2 + uri: huggingface://nold/HelpingAI-9B-GGUF/HelpingAI-9B_Q4_K_M.gguf +- url: "github:mudler/LocalAI/gallery/chatml-hercules.yaml@master" + icon: "https://tse3.mm.bing.net/th/id/OIG1.vnrl3xpEcypR3McLW63q?pid=ImgGn" + urls: + - https://huggingface.co/Locutusque/Llama-3-Hercules-5.0-8B + - https://huggingface.co/bartowski/Llama-3-Hercules-5.0-8B-GGUF + name: "llama-3-hercules-5.0-8b" + tags: + - llm + - gguf + - gpu + - cpu + - chatml + - function-calling + description: | + Llama-3-Hercules-5.0-8B is a fine-tuned language model derived from Llama-3-8B. It is specifically designed to excel in instruction following, function calls, and conversational interactions across various scientific and technical domains. + overrides: + parameters: + model: Llama-3-Hercules-5.0-8B-Q4_K_M.gguf + files: + - filename: Llama-3-Hercules-5.0-8B-Q4_K_M.gguf + sha256: 83647caf4a23a91697585cff391e7d1236fac867392f9e49a6dab59f81b5f810 + uri: huggingface://bartowski/Llama-3-Hercules-5.0-8B-GGUF/Llama-3-Hercules-5.0-8B-Q4_K_M.gguf - &phi-2-chat ### START Phi-2 url: "github:mudler/LocalAI/gallery/phi-2-chat.yaml@master" @@ -1228,8 +1276,9 @@ - llm - gguf - gpu - - llama2 + - mistral - cpu + - function-calling overrides: parameters: model: Hermes-2-Pro-Mistral-7B.Q4_0.gguf @@ -1264,6 +1313,7 @@ - gpu - llama3 - cpu + - function-calling description: | Hermes-2 Θ (Theta) is the first experimental merged model released by Nous Research, in collaboration with Charles Goddard at Arcee, the team behind MergeKit. Hermes-2 Θ is a merged and then further RLHF'ed version our excellent Hermes 2 Pro model and Meta's Llama-3 Instruct model to form a new model, Hermes-2 Θ, combining the best of both worlds of each model. @@ -1284,6 +1334,7 @@ - gguf - gpu - llama3 + - function-calling - cpu urls: - https://huggingface.co/NousResearch/Hermes-2-Pro-Llama-3-8B-GGUF @@ -1300,6 +1351,7 @@ - gguf - gpu - llama3 + - function-calling - cpu name: "hermes-2-pro-llama-3-8b:Q5_K_M" urls: @@ -1316,6 +1368,7 @@ - llm - gguf - gpu + - function-calling - llama3 - cpu name: "hermes-2-pro-llama-3-8b:Q8_0"