SurfSense v3 - Highlight: Local LLM Support

This commit is contained in:
DESKTOP-RTLN3BA\$punk 2024-09-19 22:50:16 -07:00
parent 04df919cf9
commit 7f38091d3d
13 changed files with 692 additions and 1345 deletions

View file

@ -1,6 +1,11 @@
from pydantic import BaseModel, Field
from typing import List, Optional
class UserCreate(BaseModel):
username: str
password: str
apisecretkey: str
class DocMeta(BaseModel):
BrowsingSessionId: Optional[str] = Field(default=None, description="BrowsingSessionId of Document")
VisitedWebPageURL: Optional[str] = Field(default=None, description="VisitedWebPageURL of Document")
@ -8,77 +13,53 @@ class DocMeta(BaseModel):
VisitedWebPageDateWithTimeInISOString: Optional[str] = Field(default=None, description="VisitedWebPageDateWithTimeInISOString of Document")
VisitedWebPageReffererURL: Optional[str] = Field(default=None, description="VisitedWebPageReffererURL of Document")
VisitedWebPageVisitDurationInMilliseconds: Optional[int] = Field(default=None, description="VisitedWebPageVisitDurationInMilliseconds of Document"),
class DocWithContent(BaseModel):
BrowsingSessionId: Optional[str] = Field(default=None, description="BrowsingSessionId of Document")
VisitedWebPageURL: Optional[str] = Field(default=None, description="VisitedWebPageURL of Document")
VisitedWebPageTitle: Optional[str] = Field(default=None, description="VisitedWebPageTitle of Document")
VisitedWebPageDateWithTimeInISOString: Optional[str] = Field(default=None, description="VisitedWebPageDateWithTimeInISOString of Document")
VisitedWebPageReffererURL: Optional[str] = Field(default=None, description="VisitedWebPageReffererURL of Document")
VisitedWebPageVisitDurationInMilliseconds: Optional[int] = Field(default=None, description="VisitedWebPageVisitDurationInMilliseconds of Document"),
VisitedWebPageContent: Optional[str] = Field(default=None, description="Visited WebPage Content in markdown of Document")
class PrecisionQuery(BaseModel):
sessionid: Optional[str] = Field(default=None)
webpageurl: Optional[str] = Field(default=None)
daterange: Optional[List[str]]
timerange: Optional[List[int]]
neourl: str
neouser: str
neopass: str
class DocumentsToDelete(BaseModel):
ids_to_delete: List[str]
openaikey: str
apisecretkey: str
class PrecisionResponse(BaseModel):
documents: List[DocMeta]
token: str
class UserQuery(BaseModel):
query: str
neourl: str
neouser: str
neopass: str
search_space: str
openaikey: str
apisecretkey: str
token: str
class ChatHistory(BaseModel):
type: str
content: str | List[DocMeta]
content: str | List[DocMeta] | List[str]
class UserQueryWithChatHistory(BaseModel):
chat: List[ChatHistory]
query: str
neourl: str
neouser: str
neopass: str
openaikey: str
apisecretkey: str
token: str
class DescriptionResponse(BaseModel):
response: str
class RetrivedDocListItem(BaseModel):
metadata: DocMeta
pageContent: str
class RetrivedDocList(BaseModel):
documents: List[RetrivedDocListItem]
neourl: str
neouser: str
neopass: str
search_space: str | None
openaikey: str
token: str
class UserQueryResponse(BaseModel):
response: str
relateddocs: List[DocMeta]
class VectorSearchQuery(BaseModel):
searchquery: str
class NewUserData(BaseModel):
token: str
userid: str
chats: str
notifications: str
relateddocs: List[DocWithContent]
class NewUserChat(BaseModel):
token: str
@ -86,19 +67,7 @@ class NewUserChat(BaseModel):
title: str
chats_list: str
class ChatToUpdate(BaseModel):
chatid: str
token: str
# type: str
# title: str
chats_list: str
class GraphDocs(BaseModel):
documents: List[RetrivedDocListItem]
token: str
class Notifications(BaseModel):
notifications: List[str]
chats_list: str