Adding support for Ctransformers (#387)

Ctransformers allows support for many models in the GGML format and
HuggingFace models.
This commit is contained in:
Gustavo Schaedler 2023-05-29 17:27:40 +01:00 • committed by GitHub
commit 44ebfa450c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 22 additions and 3 deletions

18
poetry.lock generated
View file

@ -876,6 +876,24 @@ test = ["iso8601", "pretend", "pytest (>=6.2.0)", "pytest-benchmark", "pytest-co
test-randomorder = ["pytest-randomly"] test-randomorder = ["pytest-randomly"]
tox = ["tox"] tox = ["tox"]
[[package]]
name = "ctransformers"
version = "0.2.2"
description = "Python bindings for the Transformer models implemented in C/C++ using GGML library."
category = "main"
optional = false
python-versions = "*"
files = [
{file = "ctransformers-0.2.2-py3-none-any.whl", hash = "sha256:bf682dd0293dd87911c9a9a1169a4873ff55baebc16d465c6029c77f11b18cf6"},
{file = "ctransformers-0.2.2.tar.gz", hash = "sha256:1fc36b3fde36d9fd3cb69e48993315bb1f5f54ae552720eb909dc4b3a131c743"},
]
[package.dependencies]
huggingface-hub = "*"
[package.extras]
tests = ["pytest"]
[[package]] [[package]]
name = "dataclasses-json" name = "dataclasses-json"
version = "0.5.7" version = "0.5.7"

View file

@ -55,6 +55,7 @@ websockets = "^11.0.3"
weaviate-client = "^3.19.2" weaviate-client = "^3.19.2"
jina = "3.15.2" jina = "3.15.2"
sentence-transformers = "^2.2.2" sentence-transformers = "^2.2.2"
ctransformers = "^0.2.2"
[tool.poetry.group.dev.dependencies] [tool.poetry.group.dev.dependencies]

View file

@ -46,13 +46,13 @@ documentloaders:
embeddings: embeddings:
- OpenAIEmbeddings - OpenAIEmbeddings
- HuggingFaceEmbeddings - HuggingFaceEmbeddings
llms: llms:
- OpenAI - OpenAI
# - AzureOpenAI # - AzureOpenAI
- ChatOpenAI - ChatOpenAI
- HuggingFaceHub - HuggingFaceHub
- LlamaCpp - LlamaCpp
- CTransformers
memories: memories:
- ConversationBufferMemory - ConversationBufferMemory
- ConversationSummaryMemory - ConversationSummaryMemory
@ -117,7 +117,7 @@ vectorstores:
- Qdrant - Qdrant
- Weaviate - Weaviate
wrappers: wrappers:
- RequestsWrapper # Wait more tests - RequestsWrapper
# - ChatPromptTemplate # - ChatPromptTemplate
# - SystemMessagePromptTemplate # - SystemMessagePromptTemplate
# - HumanMessagePromptTemplate # - HumanMessagePromptTemplate

View file

@ -43,7 +43,7 @@ class LLMFrontendNode(FrontendNode):
field.field_type = "code" field.field_type = "code"
field.advanced = True field.advanced = True
field.show = True field.show = True
elif field.name in ["model_name", "temperature"]: elif field.name in ["model_name", "temperature", "model_file", "model_type"]:
field.advanced = False field.advanced = False
field.show = True field.show = True