Add question caching
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Accessibilité débutants
- 20/100
Piste de recherche
Commencez par le flux chat_completion proposé et suivez le chemin existant d’une requête RAG, notamment la génération des embeddings, la recherche vectorielle, l’historique du chat et la génération de completion. Définissez le stockage du cache, le comportement de correspondance et la valeur de retour en cas d’accès réussi au cache avant l’implémentation ; done doit inclure des accès réussis et des échecs de cache fonctionnels, avec des tests pour les deux chemins.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Description
Add a question caching feature. Pseudocode based on other repo-
def chat_completion(user_input):
# Generate embeddings from the user input
user_embeddings = generate_embeddings(openai_client, user_input)
# Query the chat history cache first to see if this question has been asked before
cache_results = cache_search(vectors=user_embeddings , num_results=1)
if len(cache_results) > 0:
return cache_results[0]['completion'], True
else:
# Perform vector search
search_results = get_similar_docs(openai_client, dbsource, user_input, 3)
print("Getting Chat History\n")
# Chat history
chat_history = get_chat_history(1)
# Generate the completion
print("Generating completions \n")
completions_results = generatecompletionede(user_input, search_results, chat_history)
# Cache the response
cacheresponse(user_input, user_embeddings, completions_results)
print("\n")
# Return the generated LLM completion
return completions_results['choices'][0]['message']['content'], False
- Langage dominant
- Python
- Étoiles
- 505
- Forks
- 1.1k
- Merge moyen
- 3 j 13 h
- PR mergées (30 j)
- 1
Préparer son environnement
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de Azure-Samples/rag-postgres-openai-python
-
Difficulté 3/5 1-2 jours Accessibilité débutants 35/100
Azure-Samples/rag-postgres-openai-python#288 · 1 commentaire ·
-
Azure-Samples/rag-postgres-openai-python#273 · 1 personne assignée ·
-
Azure-Samples/rag-postgres-openai-python#269 · 1 réaction · 1 personne assignée ·
-
Azure-Samples/rag-postgres-openai-python#261 · 1 réaction · 1 personne assignée ·
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
Toutes les issues de Azure-Samples/rag-postgres-openai-python
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
PedestrianDynamics/pyFDS-Evac#199 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
521xueweihan/HelloGitHub#3790 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
sandialabs/atlas-ui-3#978 ·
Les mainteneurs répondent en général sous 1 jour
-
area: tests perceived difficulty: 2
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Nitjsefnie-Harness-Commons/daedalus#1255 ·
Les mainteneurs répondent en général sous 1 jour
-
hf-audiolm-qwen: `generate_until` hardcodes `.to("cuda")` and aborts on non-CUDA acceleratorsOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 86/100
EleutherAI/lm-evaluation-harness#4256 ·
Les mainteneurs répondent en général sous 1 jour