Fix assistants forms (#4578)

* Fix assistant num chunk setting

* test

* Fix test

* Update web/src/app/assistants/mine/AssistantModal.tsx

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* Update web/src/app/assistants/mine/AssistantModal.tsx

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

---------

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
This commit is contained in:
Chris Weaver 2025-04-22 09:09:03 -07:00 committed by GitHub
parent e3218d358d
commit 420d2614d4
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 49 additions and 20 deletions

View File

@ -92,7 +92,7 @@ def patch_persona_visibility(
@basic_router.patch("/{persona_id}/public")
def patch_user_presona_public_status(
def patch_user_persona_public_status(
persona_id: int,
is_public_request: IsPublicRequest,
user: User | None = Depends(current_user),

View File

@ -95,24 +95,24 @@ class PersonaSnapshot(BaseModel):
description: str
is_public: bool
is_visible: bool
icon_shape: int | None = None
icon_color: str | None = None
uploaded_image_id: str | None = None
user_file_ids: list[int] = Field(default_factory=list)
user_folder_ids: list[int] = Field(default_factory=list)
display_priority: int | None = None
is_default_persona: bool = False
builtin_persona: bool = False
starter_messages: list[StarterMessage] | None = None
tools: list[ToolSnapshot] = Field(default_factory=list)
labels: list["PersonaLabelSnapshot"] = Field(default_factory=list)
owner: MinimalUserSnapshot | None = None
users: list[MinimalUserSnapshot] = Field(default_factory=list)
groups: list[int] = Field(default_factory=list)
document_sets: list[DocumentSet] = Field(default_factory=list)
llm_model_provider_override: str | None = None
llm_model_version_override: str | None = None
num_chunks: float | None = None
icon_shape: int | None
icon_color: str | None
uploaded_image_id: str | None
user_file_ids: list[int]
user_folder_ids: list[int]
display_priority: int | None
is_default_persona: bool
builtin_persona: bool
starter_messages: list[StarterMessage] | None
tools: list[ToolSnapshot]
labels: list["PersonaLabelSnapshot"]
owner: MinimalUserSnapshot | None
users: list[MinimalUserSnapshot]
groups: list[int]
document_sets: list[DocumentSet]
llm_model_provider_override: str | None
llm_model_version_override: str | None
num_chunks: float | None
@classmethod
def from_model(cls, persona: Persona) -> "PersonaSnapshot":
@ -187,6 +187,11 @@ class FullPersonaSnapshot(PersonaSnapshot):
is_default_persona=persona.is_default_persona,
builtin_persona=persona.builtin_persona,
starter_messages=persona.starter_messages,
users=[
MinimalUserSnapshot(id=user.id, email=user.email)
for user in persona.users
],
groups=[user_group.id for user_group in persona.groups],
tools=[ToolSnapshot.from_model(tool) for tool in persona.tools],
labels=[PersonaLabelSnapshot.from_model(label) for label in persona.labels],
owner=(
@ -198,10 +203,13 @@ class FullPersonaSnapshot(PersonaSnapshot):
DocumentSet.from_model(document_set_model)
for document_set_model in persona.document_sets
],
num_chunks=persona.num_chunks,
search_start_date=persona.search_start_date,
prompts=[PromptSnapshot.from_model(prompt) for prompt in persona.prompts],
llm_relevance_filter=persona.llm_relevance_filter,
llm_filter_extraction=persona.llm_filter_extraction,
llm_model_provider_override=persona.llm_model_provider_override,
llm_model_version_override=persona.llm_model_version_override,
)

View File

@ -180,6 +180,7 @@ const AssistantCard: React.FC<{
<button
type="button"
className="hover:bg-neutral-200 dark:hover:bg-neutral-700 p-1 -my-1 rounded-full"
aria-label="More Options"
>
<FiMoreHorizontal size={16} />
</button>

View File

@ -117,7 +117,25 @@ export function AssistantModal({ hideModal }: AssistantModalProps) {
>
<div
onClick={(e) => e.stopPropagation()}
className="p-0 max-w-4xl overflow-hidden max-h-[80vh] w-[95%] bg-background rounded-md shadow-2xl transform transition-all duration-300 ease-in-out relative w-11/12 max-w-4xl pt-10 pb-10 px-10 overflow-hidden flex flex-col"
className="p-0
max-w-4xl
overflow-hidden
max-h-[80vh]
w-[95%]
bg-background
rounded-md
shadow-2xl
transform
transition-all
duration-300
ease-in-out
relative
w-11/12
pt-10
pb-10
px-10
flex
flex-col"
style={{
position: "fixed",
top: "10vh",
@ -125,6 +143,7 @@ export function AssistantModal({ hideModal }: AssistantModalProps) {
transform: "translateX(-50%)",
margin: 0,
}}
aria-label="Assistant Modal"
>
<div className="absolute top-2 right-2">
<button

View File

@ -402,6 +402,7 @@ export const HistorySidebar = forwardRef<HTMLDivElement, HistorySidebarProps>(
<div className="w-full px-4">
<button
aria-label="Explore Assistants"
onClick={() => setShowAssistantsModal(true)}
className="w-full cursor-pointer text-base text-black dark:text-[#D4D4D4] hover:bg-background-chat-hover flex items-center gap-x-2 py-1 px-2 rounded-md"
>