feat: add RAG_EMBEDDING_OPENAI_BATCH_SIZE to batch multiple embeddings

This commit is contained in:
Jun Siang Cheah 2024-06-02 15:34:31 +01:00
parent 207e25035a
commit 0cb8163321
39 changed files with 112 additions and 19 deletions

View File

@ -78,6 +78,7 @@ from utils.misc import (
from utils.utils import get_current_user, get_admin_user from utils.utils import get_current_user, get_admin_user
from config import ( from config import (
AppConfig,
ENV, ENV,
SRC_LOG_LEVELS, SRC_LOG_LEVELS,
UPLOAD_DIR, UPLOAD_DIR,
@ -114,7 +115,7 @@ from config import (
SERPER_API_KEY, SERPER_API_KEY,
RAG_WEB_SEARCH_RESULT_COUNT, RAG_WEB_SEARCH_RESULT_COUNT,
RAG_WEB_SEARCH_CONCURRENT_REQUESTS, RAG_WEB_SEARCH_CONCURRENT_REQUESTS,
AppConfig, RAG_EMBEDDING_OPENAI_BATCH_SIZE,
) )
from constants import ERROR_MESSAGES from constants import ERROR_MESSAGES
@ -139,6 +140,7 @@ app.state.config.CHUNK_OVERLAP = CHUNK_OVERLAP
app.state.config.RAG_EMBEDDING_ENGINE = RAG_EMBEDDING_ENGINE app.state.config.RAG_EMBEDDING_ENGINE = RAG_EMBEDDING_ENGINE
app.state.config.RAG_EMBEDDING_MODEL = RAG_EMBEDDING_MODEL app.state.config.RAG_EMBEDDING_MODEL = RAG_EMBEDDING_MODEL
app.state.config.RAG_EMBEDDING_OPENAI_BATCH_SIZE = RAG_EMBEDDING_OPENAI_BATCH_SIZE
app.state.config.RAG_RERANKING_MODEL = RAG_RERANKING_MODEL app.state.config.RAG_RERANKING_MODEL = RAG_RERANKING_MODEL
app.state.config.RAG_TEMPLATE = RAG_TEMPLATE app.state.config.RAG_TEMPLATE = RAG_TEMPLATE
@ -212,6 +214,7 @@ app.state.EMBEDDING_FUNCTION = get_embedding_function(
app.state.sentence_transformer_ef, app.state.sentence_transformer_ef,
app.state.config.OPENAI_API_KEY, app.state.config.OPENAI_API_KEY,
app.state.config.OPENAI_API_BASE_URL, app.state.config.OPENAI_API_BASE_URL,
app.state.config.RAG_EMBEDDING_OPENAI_BATCH_SIZE,
) )
origins = ["*"] origins = ["*"]
@ -248,6 +251,7 @@ async def get_status():
"embedding_engine": app.state.config.RAG_EMBEDDING_ENGINE, "embedding_engine": app.state.config.RAG_EMBEDDING_ENGINE,
"embedding_model": app.state.config.RAG_EMBEDDING_MODEL, "embedding_model": app.state.config.RAG_EMBEDDING_MODEL,
"reranking_model": app.state.config.RAG_RERANKING_MODEL, "reranking_model": app.state.config.RAG_RERANKING_MODEL,
"openai_batch_size": app.state.config.RAG_EMBEDDING_OPENAI_BATCH_SIZE,
} }
@ -260,6 +264,7 @@ async def get_embedding_config(user=Depends(get_admin_user)):
"openai_config": { "openai_config": {
"url": app.state.config.OPENAI_API_BASE_URL, "url": app.state.config.OPENAI_API_BASE_URL,
"key": app.state.config.OPENAI_API_KEY, "key": app.state.config.OPENAI_API_KEY,
"batch_size": app.state.config.RAG_EMBEDDING_OPENAI_BATCH_SIZE,
}, },
} }
@ -275,6 +280,7 @@ async def get_reraanking_config(user=Depends(get_admin_user)):
class OpenAIConfigForm(BaseModel): class OpenAIConfigForm(BaseModel):
url: str url: str
key: str key: str
batch_size: Optional[int] = None
class EmbeddingModelUpdateForm(BaseModel): class EmbeddingModelUpdateForm(BaseModel):
@ -295,9 +301,14 @@ async def update_embedding_config(
app.state.config.RAG_EMBEDDING_MODEL = form_data.embedding_model app.state.config.RAG_EMBEDDING_MODEL = form_data.embedding_model
if app.state.config.RAG_EMBEDDING_ENGINE in ["ollama", "openai"]: if app.state.config.RAG_EMBEDDING_ENGINE in ["ollama", "openai"]:
if form_data.openai_config != None: if form_data.openai_config is not None:
app.state.config.OPENAI_API_BASE_URL = form_data.openai_config.url app.state.config.OPENAI_API_BASE_URL = form_data.openai_config.url
app.state.config.OPENAI_API_KEY = form_data.openai_config.key app.state.config.OPENAI_API_KEY = form_data.openai_config.key
app.state.config.RAG_EMBEDDING_OPENAI_BATCH_SIZE = (
form_data.openai_config.batch_size
if form_data.openai_config.batch_size
else 1
)
update_embedding_model(app.state.config.RAG_EMBEDDING_MODEL) update_embedding_model(app.state.config.RAG_EMBEDDING_MODEL)
@ -307,6 +318,7 @@ async def update_embedding_config(
app.state.sentence_transformer_ef, app.state.sentence_transformer_ef,
app.state.config.OPENAI_API_KEY, app.state.config.OPENAI_API_KEY,
app.state.config.OPENAI_API_BASE_URL, app.state.config.OPENAI_API_BASE_URL,
app.state.config.RAG_EMBEDDING_OPENAI_BATCH_SIZE,
) )
return { return {
@ -316,6 +328,7 @@ async def update_embedding_config(
"openai_config": { "openai_config": {
"url": app.state.config.OPENAI_API_BASE_URL, "url": app.state.config.OPENAI_API_BASE_URL,
"key": app.state.config.OPENAI_API_KEY, "key": app.state.config.OPENAI_API_KEY,
"batch_size": app.state.config.RAG_EMBEDDING_OPENAI_BATCH_SIZE,
}, },
} }
except Exception as e: except Exception as e:
@ -881,6 +894,7 @@ def store_docs_in_vector_db(docs, collection_name, overwrite: bool = False) -> b
app.state.sentence_transformer_ef, app.state.sentence_transformer_ef,
app.state.config.OPENAI_API_KEY, app.state.config.OPENAI_API_KEY,
app.state.config.OPENAI_API_BASE_URL, app.state.config.OPENAI_API_BASE_URL,
app.state.config.RAG_EMBEDDING_OPENAI_BATCH_SIZE,
) )
embedding_texts = list(map(lambda x: x.replace("\n", " "), texts)) embedding_texts = list(map(lambda x: x.replace("\n", " "), texts))

View File

@ -2,7 +2,7 @@ import os
import logging import logging
import requests import requests
from typing import List from typing import List, Union
from apps.ollama.main import ( from apps.ollama.main import (
generate_ollama_embeddings, generate_ollama_embeddings,
@ -21,17 +21,7 @@ from langchain.retrievers import (
from typing import Optional from typing import Optional
from config import ( from config import SRC_LOG_LEVELS, CHROMA_CLIENT
SRC_LOG_LEVELS,
CHROMA_CLIENT,
SEARXNG_QUERY_URL,
GOOGLE_PSE_API_KEY,
GOOGLE_PSE_ENGINE_ID,
BRAVE_SEARCH_API_KEY,
SERPSTACK_API_KEY,
SERPSTACK_HTTPS,
SERPER_API_KEY,
)
log = logging.getLogger(__name__) log = logging.getLogger(__name__)
log.setLevel(SRC_LOG_LEVELS["RAG"]) log.setLevel(SRC_LOG_LEVELS["RAG"])
@ -209,6 +199,7 @@ def get_embedding_function(
embedding_function, embedding_function,
openai_key, openai_key,
openai_url, openai_url,
batch_size,
): ):
if embedding_engine == "": if embedding_engine == "":
return lambda query: embedding_function.encode(query).tolist() return lambda query: embedding_function.encode(query).tolist()
@ -232,6 +223,12 @@ def get_embedding_function(
def generate_multiple(query, f): def generate_multiple(query, f):
if isinstance(query, list): if isinstance(query, list):
if embedding_engine == "openai":
embeddings = []
for i in range(0, len(query), batch_size):
embeddings.extend(f(query[i : i + batch_size]))
return embeddings
else:
return [f(q) for q in query] return [f(q) for q in query]
else: else:
return f(query) return f(query)
@ -413,8 +410,22 @@ def get_model_path(model: str, update_model: bool = False):
def generate_openai_embeddings( def generate_openai_embeddings(
model: str, text: str, key: str, url: str = "https://api.openai.com/v1" model: str,
text: Union[str, list[str]],
key: str,
url: str = "https://api.openai.com/v1",
): ):
if isinstance(text, list):
embeddings = generate_openai_batch_embeddings(model, text, key, url)
else:
embeddings = generate_openai_batch_embeddings(model, [text], key, url)
return embeddings[0] if isinstance(text, str) else embeddings
def generate_openai_batch_embeddings(
model: str, texts: list[str], key: str, url: str = "https://api.openai.com/v1"
) -> Optional[list[list[float]]]:
try: try:
r = requests.post( r = requests.post(
f"{url}/embeddings", f"{url}/embeddings",
@ -422,12 +433,12 @@ def generate_openai_embeddings(
"Content-Type": "application/json", "Content-Type": "application/json",
"Authorization": f"Bearer {key}", "Authorization": f"Bearer {key}",
}, },
json={"input": text, "model": model}, json={"input": texts, "model": model},
) )
r.raise_for_status() r.raise_for_status()
data = r.json() data = r.json()
if "data" in data: if "data" in data:
return data["data"][0]["embedding"] return [elem["embedding"] for elem in data["data"]]
else: else:
raise "Something went wrong :/" raise "Something went wrong :/"
except Exception as e: except Exception as e:

View File

@ -672,6 +672,12 @@ RAG_EMBEDDING_MODEL_TRUST_REMOTE_CODE = (
os.environ.get("RAG_EMBEDDING_MODEL_TRUST_REMOTE_CODE", "").lower() == "true" os.environ.get("RAG_EMBEDDING_MODEL_TRUST_REMOTE_CODE", "").lower() == "true"
) )
RAG_EMBEDDING_OPENAI_BATCH_SIZE = PersistentConfig(
"RAG_EMBEDDING_OPENAI_BATCH_SIZE",
"rag.embedding_openai_batch_size",
os.environ.get("RAG_EMBEDDING_OPENAI_BATCH_SIZE", 1),
)
RAG_RERANKING_MODEL = PersistentConfig( RAG_RERANKING_MODEL = PersistentConfig(
"RAG_RERANKING_MODEL", "RAG_RERANKING_MODEL",
"rag.reranking_model", "rag.reranking_model",

View File

@ -415,6 +415,7 @@ export const getEmbeddingConfig = async (token: string) => {
type OpenAIConfigForm = { type OpenAIConfigForm = {
key: string; key: string;
url: string; url: string;
batch_size: number;
}; };
type EmbeddingModelUpdateForm = { type EmbeddingModelUpdateForm = {

View File

@ -31,6 +31,7 @@
let OpenAIKey = ''; let OpenAIKey = '';
let OpenAIUrl = ''; let OpenAIUrl = '';
let OpenAIBatchSize = 1;
let querySettings = { let querySettings = {
template: '', template: '',
@ -92,7 +93,8 @@
? { ? {
openai_config: { openai_config: {
key: OpenAIKey, key: OpenAIKey,
url: OpenAIUrl url: OpenAIUrl,
batch_size: OpenAIBatchSize
} }
} }
: {}) : {})
@ -159,6 +161,7 @@
OpenAIKey = embeddingConfig.openai_config.key; OpenAIKey = embeddingConfig.openai_config.key;
OpenAIUrl = embeddingConfig.openai_config.url; OpenAIUrl = embeddingConfig.openai_config.url;
OpenAIBatchSize = embeddingConfig.openai_config.batch_size ?? 1;
} }
}; };
@ -282,6 +285,30 @@
required required
/> />
</div> </div>
<div class="flex mt-0.5 space-x-2">
<div class=" self-center text-xs font-medium">{$i18n.t('Embedding Batch Size')}</div>
<div class=" flex-1">
<input
id="steps-range"
type="range"
min="1"
max="2048"
step="1"
bind:value={OpenAIBatchSize}
class="w-full h-2 rounded-lg appearance-none cursor-pointer dark:bg-gray-700"
/>
</div>
<div class="">
<input
bind:value={OpenAIBatchSize}
type="number"
class=" bg-transparent text-center w-14"
min="-2"
max="16000"
step="1"
/>
</div>
</div>
{/if} {/if}
<div class=" flex w-full justify-between"> <div class=" flex w-full justify-between">

View File

@ -169,6 +169,7 @@
"Edit Doc": "تعديل الملف", "Edit Doc": "تعديل الملف",
"Edit User": "تعديل المستخدم", "Edit User": "تعديل المستخدم",
"Email": "البريد", "Email": "البريد",
"Embedding Batch Size": "",
"Embedding Model": "نموذج التضمين", "Embedding Model": "نموذج التضمين",
"Embedding Model Engine": "تضمين محرك النموذج", "Embedding Model Engine": "تضمين محرك النموذج",
"Embedding model set to \"{{embedding_model}}\"": "تم تعيين نموذج التضمين على \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "تم تعيين نموذج التضمين على \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Редактиране на документ", "Edit Doc": "Редактиране на документ",
"Edit User": "Редактиране на потребител", "Edit User": "Редактиране на потребител",
"Email": "Имейл", "Email": "Имейл",
"Embedding Batch Size": "",
"Embedding Model": "Модел за вграждане", "Embedding Model": "Модел за вграждане",
"Embedding Model Engine": "Модел за вграждане", "Embedding Model Engine": "Модел за вграждане",
"Embedding model set to \"{{embedding_model}}\"": "Модел за вграждане е настроен на \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "Модел за вграждане е настроен на \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "ডকুমেন্ট এডিট করুন", "Edit Doc": "ডকুমেন্ট এডিট করুন",
"Edit User": "ইউজার এডিট করুন", "Edit User": "ইউজার এডিট করুন",
"Email": "ইমেইল", "Email": "ইমেইল",
"Embedding Batch Size": "",
"Embedding Model": "ইমেজ ইমেবডিং মডেল", "Embedding Model": "ইমেজ ইমেবডিং মডেল",
"Embedding Model Engine": "ইমেজ ইমেবডিং মডেল ইঞ্জিন", "Embedding Model Engine": "ইমেজ ইমেবডিং মডেল ইঞ্জিন",
"Embedding model set to \"{{embedding_model}}\"": "ইমেজ ইমেবডিং মডেল সেট করা হয়েছে - \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "ইমেজ ইমেবডিং মডেল সেট করা হয়েছে - \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Edita Document", "Edit Doc": "Edita Document",
"Edit User": "Edita Usuari", "Edit User": "Edita Usuari",
"Email": "Correu electrònic", "Email": "Correu electrònic",
"Embedding Batch Size": "",
"Embedding Model": "Model d'embutiment", "Embedding Model": "Model d'embutiment",
"Embedding Model Engine": "Motor de model d'embutiment", "Embedding Model Engine": "Motor de model d'embutiment",
"Embedding model set to \"{{embedding_model}}\"": "Model d'embutiment configurat a \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "Model d'embutiment configurat a \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "I-edit ang dokumento", "Edit Doc": "I-edit ang dokumento",
"Edit User": "I-edit ang tiggamit", "Edit User": "I-edit ang tiggamit",
"Email": "E-mail", "Email": "E-mail",
"Embedding Batch Size": "",
"Embedding Model": "", "Embedding Model": "",
"Embedding Model Engine": "", "Embedding Model Engine": "",
"Embedding model set to \"{{embedding_model}}\"": "", "Embedding model set to \"{{embedding_model}}\"": "",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Dokument bearbeiten", "Edit Doc": "Dokument bearbeiten",
"Edit User": "Benutzer bearbeiten", "Edit User": "Benutzer bearbeiten",
"Email": "E-Mail", "Email": "E-Mail",
"Embedding Batch Size": "",
"Embedding Model": "Embedding-Modell", "Embedding Model": "Embedding-Modell",
"Embedding Model Engine": "Embedding-Modell-Engine", "Embedding Model Engine": "Embedding-Modell-Engine",
"Embedding model set to \"{{embedding_model}}\"": "Embedding-Modell auf \"{{embedding_model}}\" gesetzt", "Embedding model set to \"{{embedding_model}}\"": "Embedding-Modell auf \"{{embedding_model}}\" gesetzt",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Edit Doge", "Edit Doc": "Edit Doge",
"Edit User": "Edit Wowser", "Edit User": "Edit Wowser",
"Email": "Email", "Email": "Email",
"Embedding Batch Size": "",
"Embedding Model": "", "Embedding Model": "",
"Embedding Model Engine": "", "Embedding Model Engine": "",
"Embedding model set to \"{{embedding_model}}\"": "", "Embedding model set to \"{{embedding_model}}\"": "",

View File

@ -169,6 +169,7 @@
"Edit Doc": "", "Edit Doc": "",
"Edit User": "", "Edit User": "",
"Email": "", "Email": "",
"Embedding Batch Size": "",
"Embedding Model": "", "Embedding Model": "",
"Embedding Model Engine": "", "Embedding Model Engine": "",
"Embedding model set to \"{{embedding_model}}\"": "", "Embedding model set to \"{{embedding_model}}\"": "",

View File

@ -169,6 +169,7 @@
"Edit Doc": "", "Edit Doc": "",
"Edit User": "", "Edit User": "",
"Email": "", "Email": "",
"Embedding Batch Size": "",
"Embedding Model": "", "Embedding Model": "",
"Embedding Model Engine": "", "Embedding Model Engine": "",
"Embedding model set to \"{{embedding_model}}\"": "", "Embedding model set to \"{{embedding_model}}\"": "",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Editar Documento", "Edit Doc": "Editar Documento",
"Edit User": "Editar Usuario", "Edit User": "Editar Usuario",
"Email": "Email", "Email": "Email",
"Embedding Batch Size": "",
"Embedding Model": "Modelo de Embedding", "Embedding Model": "Modelo de Embedding",
"Embedding Model Engine": "Motor de Modelo de Embedding", "Embedding Model Engine": "Motor de Modelo de Embedding",
"Embedding model set to \"{{embedding_model}}\"": "Modelo de Embedding configurado a \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "Modelo de Embedding configurado a \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "ویرایش سند", "Edit Doc": "ویرایش سند",
"Edit User": "ویرایش کاربر", "Edit User": "ویرایش کاربر",
"Email": "ایمیل", "Email": "ایمیل",
"Embedding Batch Size": "",
"Embedding Model": "مدل پیدائش", "Embedding Model": "مدل پیدائش",
"Embedding Model Engine": "محرک مدل پیدائش", "Embedding Model Engine": "محرک مدل پیدائش",
"Embedding model set to \"{{embedding_model}}\"": "مدل پیدائش را به \"{{embedding_model}}\" تنظیم کنید", "Embedding model set to \"{{embedding_model}}\"": "مدل پیدائش را به \"{{embedding_model}}\" تنظیم کنید",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Muokkaa asiakirjaa", "Edit Doc": "Muokkaa asiakirjaa",
"Edit User": "Muokkaa käyttäjää", "Edit User": "Muokkaa käyttäjää",
"Email": "Sähköposti", "Email": "Sähköposti",
"Embedding Batch Size": "",
"Embedding Model": "Upotusmalli", "Embedding Model": "Upotusmalli",
"Embedding Model Engine": "Upotusmallin moottori", "Embedding Model Engine": "Upotusmallin moottori",
"Embedding model set to \"{{embedding_model}}\"": "\"{{embedding_model}}\" valittu upotusmalliksi", "Embedding model set to \"{{embedding_model}}\"": "\"{{embedding_model}}\" valittu upotusmalliksi",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Éditer le document", "Edit Doc": "Éditer le document",
"Edit User": "Éditer l'utilisateur", "Edit User": "Éditer l'utilisateur",
"Email": "Email", "Email": "Email",
"Embedding Batch Size": "",
"Embedding Model": "Modèle d'embedding", "Embedding Model": "Modèle d'embedding",
"Embedding Model Engine": "Moteur du modèle d'embedding", "Embedding Model Engine": "Moteur du modèle d'embedding",
"Embedding model set to \"{{embedding_model}}\"": "Modèle d'embedding défini sur \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "Modèle d'embedding défini sur \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Éditer le document", "Edit Doc": "Éditer le document",
"Edit User": "Éditer l'utilisateur", "Edit User": "Éditer l'utilisateur",
"Email": "Email", "Email": "Email",
"Embedding Batch Size": "",
"Embedding Model": "Modèle pour l'Embedding", "Embedding Model": "Modèle pour l'Embedding",
"Embedding Model Engine": "Moteur du Modèle d'Embedding", "Embedding Model Engine": "Moteur du Modèle d'Embedding",
"Embedding model set to \"{{embedding_model}}\"": "Modèle d'embedding défini sur \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "Modèle d'embedding défini sur \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "ערוך מסמך", "Edit Doc": "ערוך מסמך",
"Edit User": "ערוך משתמש", "Edit User": "ערוך משתמש",
"Email": "דוא\"ל", "Email": "דוא\"ל",
"Embedding Batch Size": "",
"Embedding Model": "מודל הטמעה", "Embedding Model": "מודל הטמעה",
"Embedding Model Engine": "מנוע מודל הטמעה", "Embedding Model Engine": "מנוע מודל הטמעה",
"Embedding model set to \"{{embedding_model}}\"": "מודל ההטמעה הוגדר ל-\"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "מודל ההטמעה הוגדר ל-\"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "दस्तावेज़ संपादित करें", "Edit Doc": "दस्तावेज़ संपादित करें",
"Edit User": "यूजर को संपादित करो", "Edit User": "यूजर को संपादित करो",
"Email": "ईमेल", "Email": "ईमेल",
"Embedding Batch Size": "",
"Embedding Model": "मॉडेल अनुकूलन", "Embedding Model": "मॉडेल अनुकूलन",
"Embedding Model Engine": "एंबेडिंग मॉडल इंजन", "Embedding Model Engine": "एंबेडिंग मॉडल इंजन",
"Embedding model set to \"{{embedding_model}}\"": "एम्बेडिंग मॉडल को \"{{embedding_model}}\" पर सेट किया गया", "Embedding model set to \"{{embedding_model}}\"": "एम्बेडिंग मॉडल को \"{{embedding_model}}\" पर सेट किया गया",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Uredi dokument", "Edit Doc": "Uredi dokument",
"Edit User": "Uredi korisnika", "Edit User": "Uredi korisnika",
"Email": "Email", "Email": "Email",
"Embedding Batch Size": "",
"Embedding Model": "Embedding model", "Embedding Model": "Embedding model",
"Embedding Model Engine": "Embedding model pogon", "Embedding Model Engine": "Embedding model pogon",
"Embedding model set to \"{{embedding_model}}\"": "Embedding model postavljen na \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "Embedding model postavljen na \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Modifica documento", "Edit Doc": "Modifica documento",
"Edit User": "Modifica utente", "Edit User": "Modifica utente",
"Email": "Email", "Email": "Email",
"Embedding Batch Size": "",
"Embedding Model": "Modello di embedding", "Embedding Model": "Modello di embedding",
"Embedding Model Engine": "Motore del modello di embedding", "Embedding Model Engine": "Motore del modello di embedding",
"Embedding model set to \"{{embedding_model}}\"": "Modello di embedding impostato su \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "Modello di embedding impostato su \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "ドキュメントを編集", "Edit Doc": "ドキュメントを編集",
"Edit User": "ユーザーを編集", "Edit User": "ユーザーを編集",
"Email": "メールアドレス", "Email": "メールアドレス",
"Embedding Batch Size": "",
"Embedding Model": "埋め込みモデル", "Embedding Model": "埋め込みモデル",
"Embedding Model Engine": "埋め込みモデルエンジン", "Embedding Model Engine": "埋め込みモデルエンジン",
"Embedding model set to \"{{embedding_model}}\"": "埋め込みモデルを\"{{embedding_model}}\"に設定しました", "Embedding model set to \"{{embedding_model}}\"": "埋め込みモデルを\"{{embedding_model}}\"に設定しました",

View File

@ -169,6 +169,7 @@
"Edit Doc": "დოკუმენტის ედიტირება", "Edit Doc": "დოკუმენტის ედიტირება",
"Edit User": "მომხმარებლის ედიტირება", "Edit User": "მომხმარებლის ედიტირება",
"Email": "ელ-ფოსტა", "Email": "ელ-ფოსტა",
"Embedding Batch Size": "",
"Embedding Model": "ჩასმის ძირითადი პროგრამა", "Embedding Model": "ჩასმის ძირითადი პროგრამა",
"Embedding Model Engine": "ჩასმის ძირითადი პროგრამა", "Embedding Model Engine": "ჩასმის ძირითადი პროგრამა",
"Embedding model set to \"{{embedding_model}}\"": "ჩასმის ძირითადი პროგრამა ჩართულია \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "ჩასმის ძირითადი პროგრამა ჩართულია \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "문서 편집", "Edit Doc": "문서 편집",
"Edit User": "사용자 편집", "Edit User": "사용자 편집",
"Email": "이메일", "Email": "이메일",
"Embedding Batch Size": "",
"Embedding Model": "임베딩 모델", "Embedding Model": "임베딩 모델",
"Embedding Model Engine": "임베딩 모델 엔진", "Embedding Model Engine": "임베딩 모델 엔진",
"Embedding model set to \"{{embedding_model}}\"": "임베딩 모델을 \"{{embedding_model}}\"로 설정됨", "Embedding model set to \"{{embedding_model}}\"": "임베딩 모델을 \"{{embedding_model}}\"로 설정됨",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Wijzig Doc", "Edit Doc": "Wijzig Doc",
"Edit User": "Wijzig Gebruiker", "Edit User": "Wijzig Gebruiker",
"Email": "Email", "Email": "Email",
"Embedding Batch Size": "",
"Embedding Model": "Embedding Model", "Embedding Model": "Embedding Model",
"Embedding Model Engine": "Embedding Model Engine", "Embedding Model Engine": "Embedding Model Engine",
"Embedding model set to \"{{embedding_model}}\"": "Embedding model ingesteld op \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "Embedding model ingesteld op \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "ਡਾਕੂਮੈਂਟ ਸੰਪਾਦਨ ਕਰੋ", "Edit Doc": "ਡਾਕੂਮੈਂਟ ਸੰਪਾਦਨ ਕਰੋ",
"Edit User": "ਉਪਭੋਗਤਾ ਸੰਪਾਦਨ ਕਰੋ", "Edit User": "ਉਪਭੋਗਤਾ ਸੰਪਾਦਨ ਕਰੋ",
"Email": "ਈਮੇਲ", "Email": "ਈਮੇਲ",
"Embedding Batch Size": "",
"Embedding Model": "ਐਮਬੈੱਡਿੰਗ ਮਾਡਲ", "Embedding Model": "ਐਮਬੈੱਡਿੰਗ ਮਾਡਲ",
"Embedding Model Engine": "ਐਮਬੈੱਡਿੰਗ ਮਾਡਲ ਇੰਜਣ", "Embedding Model Engine": "ਐਮਬੈੱਡਿੰਗ ਮਾਡਲ ਇੰਜਣ",
"Embedding model set to \"{{embedding_model}}\"": "ਐਮਬੈੱਡਿੰਗ ਮਾਡਲ ਨੂੰ \"{{embedding_model}}\" 'ਤੇ ਸੈੱਟ ਕੀਤਾ ਗਿਆ", "Embedding model set to \"{{embedding_model}}\"": "ਐਮਬੈੱਡਿੰਗ ਮਾਡਲ ਨੂੰ \"{{embedding_model}}\" 'ਤੇ ਸੈੱਟ ਕੀਤਾ ਗਿਆ",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Edytuj dokument", "Edit Doc": "Edytuj dokument",
"Edit User": "Edytuj użytkownika", "Edit User": "Edytuj użytkownika",
"Email": "Email", "Email": "Email",
"Embedding Batch Size": "",
"Embedding Model": "Model osadzania", "Embedding Model": "Model osadzania",
"Embedding Model Engine": "Silnik modelu osadzania", "Embedding Model Engine": "Silnik modelu osadzania",
"Embedding model set to \"{{embedding_model}}\"": "Model osadzania ustawiono na \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "Model osadzania ustawiono na \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Editar Documento", "Edit Doc": "Editar Documento",
"Edit User": "Editar Usuário", "Edit User": "Editar Usuário",
"Email": "E-mail", "Email": "E-mail",
"Embedding Batch Size": "",
"Embedding Model": "Modelo de Embedding", "Embedding Model": "Modelo de Embedding",
"Embedding Model Engine": "Motor de Modelo de Embedding", "Embedding Model Engine": "Motor de Modelo de Embedding",
"Embedding model set to \"{{embedding_model}}\"": "Modelo de Embedding definido como \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "Modelo de Embedding definido como \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Editar Documento", "Edit Doc": "Editar Documento",
"Edit User": "Editar Usuário", "Edit User": "Editar Usuário",
"Email": "E-mail", "Email": "E-mail",
"Embedding Batch Size": "",
"Embedding Model": "Modelo de Embedding", "Embedding Model": "Modelo de Embedding",
"Embedding Model Engine": "Motor de Modelo de Embedding", "Embedding Model Engine": "Motor de Modelo de Embedding",
"Embedding model set to \"{{embedding_model}}\"": "Modelo de Embedding definido como \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "Modelo de Embedding definido como \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Редактировать документ", "Edit Doc": "Редактировать документ",
"Edit User": "Редактировать пользователя", "Edit User": "Редактировать пользователя",
"Email": "Электронная почта", "Email": "Электронная почта",
"Embedding Batch Size": "",
"Embedding Model": "Модель эмбеддинга", "Embedding Model": "Модель эмбеддинга",
"Embedding Model Engine": "Модель эмбеддинга", "Embedding Model Engine": "Модель эмбеддинга",
"Embedding model set to \"{{embedding_model}}\"": "Эмбеддинг-модель установлена в \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "Эмбеддинг-модель установлена в \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Уреди документ", "Edit Doc": "Уреди документ",
"Edit User": "Уреди корисника", "Edit User": "Уреди корисника",
"Email": "Е-пошта", "Email": "Е-пошта",
"Embedding Batch Size": "",
"Embedding Model": "Модел уградње", "Embedding Model": "Модел уградње",
"Embedding Model Engine": "Мотор модела уградње", "Embedding Model Engine": "Мотор модела уградње",
"Embedding model set to \"{{embedding_model}}\"": "Модел уградње подешен на \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "Модел уградње подешен на \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Redigera dokument", "Edit Doc": "Redigera dokument",
"Edit User": "Redigera användare", "Edit User": "Redigera användare",
"Email": "E-post", "Email": "E-post",
"Embedding Batch Size": "",
"Embedding Model": "Embeddingsmodell", "Embedding Model": "Embeddingsmodell",
"Embedding Model Engine": "Embeddingsmodellmotor", "Embedding Model Engine": "Embeddingsmodellmotor",
"Embedding model set to \"{{embedding_model}}\"": "Embeddingsmodell inställd på \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "Embeddingsmodell inställd på \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Belgeyi Düzenle", "Edit Doc": "Belgeyi Düzenle",
"Edit User": "Kullanıcıyı Düzenle", "Edit User": "Kullanıcıyı Düzenle",
"Email": "E-posta", "Email": "E-posta",
"Embedding Batch Size": "",
"Embedding Model": "Gömme Modeli", "Embedding Model": "Gömme Modeli",
"Embedding Model Engine": "Gömme Modeli Motoru", "Embedding Model Engine": "Gömme Modeli Motoru",
"Embedding model set to \"{{embedding_model}}\"": "Gömme modeli \"{{embedding_model}}\" olarak ayarlandı", "Embedding model set to \"{{embedding_model}}\"": "Gömme modeli \"{{embedding_model}}\" olarak ayarlandı",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Редагувати документ", "Edit Doc": "Редагувати документ",
"Edit User": "Редагувати користувача", "Edit User": "Редагувати користувача",
"Email": "Електронна пошта", "Email": "Електронна пошта",
"Embedding Batch Size": "",
"Embedding Model": "Модель вбудовування", "Embedding Model": "Модель вбудовування",
"Embedding Model Engine": "Двигун модели встраивания ", "Embedding Model Engine": "Двигун модели встраивания ",
"Embedding model set to \"{{embedding_model}}\"": "Встановлена модель вбудовування \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "Встановлена модель вбудовування \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "Thay đổi tài liệu", "Edit Doc": "Thay đổi tài liệu",
"Edit User": "Thay đổi thông tin người sử dụng", "Edit User": "Thay đổi thông tin người sử dụng",
"Email": "Email", "Email": "Email",
"Embedding Batch Size": "",
"Embedding Model": "Mô hình embedding", "Embedding Model": "Mô hình embedding",
"Embedding Model Engine": "Trình xử lý embedding", "Embedding Model Engine": "Trình xử lý embedding",
"Embedding model set to \"{{embedding_model}}\"": "Mô hình embedding đã được thiết lập thành \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "Mô hình embedding đã được thiết lập thành \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "编辑文档", "Edit Doc": "编辑文档",
"Edit User": "编辑用户", "Edit User": "编辑用户",
"Email": "电子邮件", "Email": "电子邮件",
"Embedding Batch Size": "",
"Embedding Model": "嵌入模型", "Embedding Model": "嵌入模型",
"Embedding Model Engine": "嵌入模型引擎", "Embedding Model Engine": "嵌入模型引擎",
"Embedding model set to \"{{embedding_model}}\"": "嵌入模型设置为 \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "嵌入模型设置为 \"{{embedding_model}}\"",

View File

@ -169,6 +169,7 @@
"Edit Doc": "編輯文件", "Edit Doc": "編輯文件",
"Edit User": "編輯使用者", "Edit User": "編輯使用者",
"Email": "電子郵件", "Email": "電子郵件",
"Embedding Batch Size": "",
"Embedding Model": "嵌入模型", "Embedding Model": "嵌入模型",
"Embedding Model Engine": "嵌入模型引擎", "Embedding Model Engine": "嵌入模型引擎",
"Embedding model set to \"{{embedding_model}}\"": "嵌入模型已設定為 \"{{embedding_model}}\"", "Embedding model set to \"{{embedding_model}}\"": "嵌入模型已設定為 \"{{embedding_model}}\"",