revert bad async changes

Kaveen Kumarasinghe 2 years ago
parent 7ba0254e87
commit d3dc0322a2

@ -56,7 +56,7 @@ RemoteReader = download_loader("RemoteReader")
RemoteDepthReader = download_loader("RemoteDepthReader") RemoteDepthReader = download_loader("RemoteDepthReader")
async def get_and_query( def get_and_query(
user_id, user_id,
index_storage, index_storage,
query, query,
@ -70,22 +70,24 @@ async def get_and_query(
user_id user_id
].get_index_or_throw() ].get_index_or_throw()
if isinstance(index, GPTTreeIndex): if isinstance(index, GPTTreeIndex):
response = await index.aquery( response = index.query(
query, query,
child_branch_factor=child_branch_factor, child_branch_factor=child_branch_factor,
llm_predictor=llm_predictor, llm_predictor=llm_predictor,
refine_template=CHAT_REFINE_PROMPT, refine_template=CHAT_REFINE_PROMPT,
embed_model=embed_model, embed_model=embed_model,
use_async=True,
# optimizer=SentenceEmbeddingOptimizer(threshold_cutoff=0.7) # optimizer=SentenceEmbeddingOptimizer(threshold_cutoff=0.7)
) )
else: else:
response = await index.aquery( response = index.query(
query, query,
response_mode=response_mode, response_mode=response_mode,
llm_predictor=llm_predictor, llm_predictor=llm_predictor,
embed_model=embed_model, embed_model=embed_model,
similarity_top_k=nodes, similarity_top_k=nodes,
refine_template=CHAT_REFINE_PROMPT, refine_template=CHAT_REFINE_PROMPT,
use_async=True,
# optimizer=SentenceEmbeddingOptimizer(threshold_cutoff=0.7) # optimizer=SentenceEmbeddingOptimizer(threshold_cutoff=0.7)
) )
return response return response
@ -922,15 +924,29 @@ class Index_handler:
try: try:
embedding_model = OpenAIEmbedding() embedding_model = OpenAIEmbedding()
embedding_model.last_token_usage = 0 embedding_model.last_token_usage = 0
response = await get_and_query( # response = await get_and_query(
ctx.user.id, # ctx.user.id,
self.index_storage, # self.index_storage,
query, # query,
response_mode, # response_mode,
nodes, # nodes,
self.llm_predictor, # self.llm_predictor,
embedding_model, # embedding_model,
child_branch_factor, # child_branch_factor,
# )
response = await self.loop.run_in_executor(
None,
partial(
get_and_query,
ctx.user.id,
self.index_storage,
query,
response_mode,
nodes,
self.llm_predictor,
embedding_model,
child_branch_factor,
),
) )
print("The last token usage was ", self.llm_predictor.last_token_usage) print("The last token usage was ", self.llm_predictor.last_token_usage)
await self.usage_service.update_usage( await self.usage_service.update_usage(

@ -1,7 +1,6 @@
import asyncio import asyncio
import os import os
import random
import re
import tempfile import tempfile
import traceback import traceback
from datetime import datetime, date from datetime import datetime, date
@ -9,7 +8,6 @@ from functools import partial
from pathlib import Path from pathlib import Path
import discord import discord
from bs4 import BeautifulSoup
import aiohttp import aiohttp
from langchain.llms import OpenAIChat from langchain.llms import OpenAIChat
from llama_index import ( from llama_index import (
@ -17,23 +15,18 @@ from llama_index import (
GPTSimpleVectorIndex, GPTSimpleVectorIndex,
BeautifulSoupWebReader, BeautifulSoupWebReader,
Document, Document,
PromptHelper,
LLMPredictor, LLMPredictor,
OpenAIEmbedding, OpenAIEmbedding,
SimpleDirectoryReader, SimpleDirectoryReader,
GPTTreeIndex,
MockLLMPredictor, MockLLMPredictor,
MockEmbedding, MockEmbedding,
) )
from llama_index.indices.knowledge_graph import GPTKnowledgeGraphIndex from llama_index.indices.knowledge_graph import GPTKnowledgeGraphIndex
from llama_index.langchain_helpers.chatgpt import ChatGPTLLMPredictor
from llama_index.prompts.chat_prompts import CHAT_REFINE_PROMPT from llama_index.prompts.chat_prompts import CHAT_REFINE_PROMPT
from llama_index.prompts.prompt_type import PromptType
from llama_index.readers.web import DEFAULT_WEBSITE_EXTRACTOR from llama_index.readers.web import DEFAULT_WEBSITE_EXTRACTOR
from langchain import OpenAI from langchain import OpenAI
from services.environment_service import EnvService from services.environment_service import EnvService
from services.usage_service import UsageService
MAX_SEARCH_PRICE = EnvService.get_max_search_price() MAX_SEARCH_PRICE = EnvService.get_max_search_price()
@ -455,24 +448,35 @@ class Search:
embedding_model.last_token_usage = 0 embedding_model.last_token_usage = 0
if not deep: if not deep:
response = await index.aquery( response = await self.loop.run_in_executor(
query, None,
embed_model=embedding_model, partial(
llm_predictor=llm_predictor, index.query,
refine_template=CHAT_REFINE_PROMPT, query,
similarity_top_k=nodes or DEFAULT_SEARCH_NODES, embed_model=embedding_model,
text_qa_template=self.qaprompt, llm_predictor=llm_predictor,
response_mode=response_mode, refine_template=CHAT_REFINE_PROMPT,
similarity_top_k=nodes or DEFAULT_SEARCH_NODES,
text_qa_template=self.qaprompt,
use_async=True,
response_mode=response_mode,
),
) )
else: else:
response = await index.aquery( response = await self.loop.run_in_executor(
query, None,
embed_model=embedding_model, partial(
llm_predictor=llm_predictor, index.query,
refine_template=CHAT_REFINE_PROMPT, query,
similarity_top_k=nodes or DEFAULT_SEARCH_NODES, embedding_mode="hybrid",
text_qa_template=self.qaprompt, llm_predictor=llm_predictor,
response_mode=response_mode, refine_template=CHAT_REFINE_PROMPT,
include_text=True,
embed_model=embedding_model,
use_async=True,
similarity_top_k=nodes or DEFAULT_SEARCH_NODES,
response_mode=response_mode,
),
) )
await self.usage_service.update_usage( await self.usage_service.update_usage(

Loading…
Cancel
Save