add response mode to search

Kaveen Kumarasinghe 1 year ago
parent 0b2cbdd473
commit bc553146cd

@ -980,6 +980,14 @@ class Commands(discord.Cog, name="Commands"):
required=False,
input_type=discord.SlashCommandOptionType.boolean,
)
@discord.option(
name="response_mode",
description="Response mode, doesn't work on deep searches",
guild_ids=ALLOWED_GUILDS,
required=False,
default="default",
choices=["default", "compact", "tree_summarize"],
)
@discord.guild_only()
async def search(
self,
@ -988,5 +996,6 @@ class Commands(discord.Cog, name="Commands"):
scope: int,
nodes: int,
deep: bool,
response_mode: str,
):
await self.search_cog.search_command(ctx, query, scope, nodes, deep)
await self.search_cog.search_command(ctx, query, scope, nodes, deep, response_mode)

@ -89,6 +89,7 @@ class SearchService(discord.Cog, name="SearchService"):
search_scope,
nodes,
deep,
response_mode,
redo=None,
from_followup=None,
):
@ -117,7 +118,7 @@ class SearchService(discord.Cog, name="SearchService"):
try:
response, refined_text = await self.model.search(
ctx, query, user_api_key, search_scope, nodes, deep
ctx, query, user_api_key, search_scope, nodes, deep, response_mode
)
except ValueError as e:
await ctx.respond(

@ -183,6 +183,7 @@ class Search:
search_scope,
nodes,
deep,
response_mode,
redo=None,
):
DEFAULT_SEARCH_NODES = 1
@ -414,7 +415,7 @@ class Search:
similarity_top_k=nodes or DEFAULT_SEARCH_NODES,
text_qa_template=self.qaprompt,
use_async=True,
response_mode="tree_summarize",
response_mode=response_mode,
),
)
else:

Loading…
Cancel
Save