SYMBOL INDEX (275 symbols across 24 files) FILE: frontend/src/components/admin.tsx function AdminUi (line 4) | function AdminUi() { FILE: frontend/src/components/chat.tsx function Chat (line 8) | function Chat() { FILE: frontend/src/components/nanostores.ts type ChatConfig (line 3) | interface ChatConfig { function setConfig (line 24) | function setConfig(chatConfig: ChatConfig) { FILE: frontend/src/layouts/Nav.tsx function Nav (line 6) | function Nav() { FILE: src/libre_chat/__main__.py function start (line 19) | def start( function build (line 48) | def build( function version (line 78) | def version() -> None: FILE: src/libre_chat/conf.py class BaseConf (line 12) | class BaseConf(BaseSettings): class SettingsInfo (line 18) | class SettingsInfo(BaseConf): class SettingsVector (line 40) | class SettingsVector(BaseConf): class SettingsLlm (line 57) | class SettingsLlm(BaseConf): class SettingsAuth (line 68) | class SettingsAuth(BaseConf): class ChatConf (line 80) | class ChatConf(BaseConf): function parse_conf (line 92) | def parse_conf(path: str = default_conf.conf_path) -> ChatConf: FILE: src/libre_chat/endpoint.py class ChatEndpoint (line 19) | class ChatEndpoint(FastAPI): method __init__ (line 24) | def __init__( FILE: src/libre_chat/llm.py class Llm (line 22) | class Llm: method __init__ (line 27) | def __init__( method download_data (line 95) | def download_data(self) -> None: method has_vectorstore (line 110) | def has_vectorstore(self) -> bool: method get_vectorstore (line 114) | def get_vectorstore(self) -> str: method get_llm (line 118) | def get_llm(self, config: Optional[Dict[str, Any]] = None) -> LlamaCpp: method setup_dbqa (line 145) | def setup_dbqa(self) -> None: method query (line 172) | def query( method aquery (line 237) | async def aquery( FILE: src/libre_chat/router.py class PromptResponse (line 35) | class PromptResponse: class ChatRouter (line 40) | class ChatRouter(APIRouter): method __init__ (line 45) | def __init__( class StreamWebsocketCallback (line 253) | class StreamWebsocketCallback(AsyncCallbackHandler): method __init__ (line 257) | def __init__( method on_llm_new_token (line 265) | async def on_llm_new_token(self, token: str, **kwargs: Any) -> None: FILE: src/libre_chat/static/web-worker.js constant CACHE_NAME (line 3) | const CACHE_NAME = 'libre-chat-assets'; FILE: src/libre_chat/ui.py function gradio_app (line 27) | def gradio_app(llm: Llm) -> Any: class StreamGradioCallback (line 240) | class StreamGradioCallback(BaseCallbackHandler): method __init__ (line 243) | def __init__(self, q: "Queue[Any]"): method on_llm_new_token (line 246) | def on_llm_new_token(self, token: str, **kwargs: Any) -> None: method on_llm_end (line 249) | def on_llm_end(self, *args: Any, **kwargs: Any) -> bool: FILE: src/libre_chat/utils.py class ChatResponse (line 31) | class ChatResponse(BaseModel): method sender_must_be_bot_or_you (line 40) | def sender_must_be_bot_or_you(cls, v: str) -> str: # noqa method validate_message_type (line 46) | def validate_message_type(cls, v: str) -> str: # noqa class Prompt (line 55) | class Prompt: function download_file (line 66) | def download_file(url: str, path: str) -> None: function parallel_download (line 112) | def parallel_download(files_list: List[Dict[str, Optional[str]]], worker... FILE: src/libre_chat/vectorstore.py function build_vectorstore (line 31) | def build_vectorstore( FILE: src/libre_chat/webapp/_astro/Nav.FPLT-AC_.js function R (line 1) | function R(){const a=U(z);y(async()=>{const r=await(await fetch(`${G}/co... FILE: src/libre_chat/webapp/_astro/admin.uwsUQjhr.js function o (line 1) | function o(){return(()=>{var t=e(a);return t.style.setProperty("flex-gro... FILE: src/libre_chat/webapp/_astro/chat.mnOtRnw4.js function St (line 1) | function St(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:nul... function gn (line 1) | function gn(c){de=c} function H (line 1) | function H(c,e){if(e){if(dn.test(c))return c.replace(Wn,en)}else if(mn.t... function Yn (line 1) | function Yn(c){return c.replace(Zn,(e,n)=>(n=n.toLowerCase(),n==="colon"... function T (line 1) | function T(c,e){let n=typeof c=="string"?c:c.source;e=e||"";const t={rep... function tn (line 1) | function tn(c){try{c=encodeURI(c).replace(/%25/g,"%")}catch{return null}... function nn (line 1) | function nn(c,e){const n=c.replace(/\|/g,(r,i,l)=>{let a=!1,g=i;for(;--g... function je (line 1) | function je(c,e,n){const t=c.length;if(t===0)return"";let s=0;for(;s0)... method code (line 3) | code(e){const n=this.rules.block.code.exec(e);if(n){const t=n[0].repla... method fences (line 4) | fences(e){const n=this.rules.block.fences.exec(e);if(n){const t=n[0],s... method heading (line 4) | heading(e){const n=this.rules.block.heading.exec(e);if(n){let t=n[2].t... method hr (line 4) | hr(e){const n=this.rules.block.hr.exec(e);if(n)return{type:"hr",raw:n[... method blockquote (line 4) | blockquote(e){const n=this.rules.block.blockquote.exec(e);if(n){const ... method list (line 5) | list(e){let n=this.rules.block.list.exec(e);if(n){let t=n[1].trim();co... method html (line 12) | html(e){const n=this.rules.block.html.exec(e);if(n)return{type:"html",... method def (line 12) | def(e){const n=this.rules.block.def.exec(e);if(n){const t=n[1].toLower... method table (line 12) | table(e){const n=this.rules.block.table.exec(e);if(!n||!/[:|]/.test(n[... method lheading (line 13) | lheading(e){const n=this.rules.block.lheading.exec(e);if(n)return{type... method paragraph (line 13) | paragraph(e){const n=this.rules.block.paragraph.exec(e);if(n){const t=... method text (line 14) | text(e){const n=this.rules.block.text.exec(e);if(n)return{type:"text",... method escape (line 14) | escape(e){const n=this.rules.inline.escape.exec(e);if(n)return{type:"e... method tag (line 14) | tag(e){const n=this.rules.inline.tag.exec(e);if(n)return!this.lexer.st... method link (line 14) | link(e){const n=this.rules.inline.link.exec(e);if(n){const t=n[2].trim... method reflink (line 14) | reflink(e,n){let t;if((t=this.rules.inline.reflink.exec(e))||(t=this.r... method emStrong (line 14) | emStrong(e,n,t=""){let s=this.rules.inline.emStrongLDelim.exec(e);if(!... method codespan (line 14) | codespan(e){const n=this.rules.inline.code.exec(e);if(n){let t=n[2].re... method br (line 14) | br(e){const n=this.rules.inline.br.exec(e);if(n)return{type:"br",raw:n... method del (line 14) | del(e){const n=this.rules.inline.del.exec(e);if(n)return{type:"del",ra... method autolink (line 14) | autolink(e){const n=this.rules.inline.autolink.exec(e);if(n){let t,s;r... method url (line 14) | url(e){let n;if(n=this.rules.inline.url.exec(e)){let t,s;if(n[2]==="@"... method inlineText (line 14) | inlineText(e){const n=this.rules.inline.text.exec(e);if(n){let t;retur... class K (line 15) | class K{tokens;options;state;tokenizer;inlineQueue;constructor(e){this.t... method constructor (line 15) | constructor(e){this.tokens=[],this.tokens.links=Object.create(null),th... method rules (line 15) | static get rules(){return{block:Xe,inline:Ne}} method lex (line 15) | static lex(e,n){return new K(n).lex(e)} method lexInline (line 15) | static lexInline(e,n){return new K(n).inlineTokens(e)} method lex (line 15) | lex(e){e=e.replace(/\r\n|\r/g,` method blockTokens (line 16) | blockTokens(e,n=[]){this.options.pedantic?e=e.replace(/\t/g," ").re... method inline (line 25) | inline(e,n=[]){return this.inlineQueue.push({src:e,tokens:n}),n} method inlineTokens (line 25) | inlineTokens(e,n=[]){let t,s,r,i=e,l,a,g;if(this.tokens.links){const p... class it (line 25) | class it{options;constructor(e){this.options=e||de}code(e,n,t){const s=(... method constructor (line 25) | constructor(e){this.options=e||de} method code (line 25) | code(e,n,t){const s=(n||"").match(/^\S*/)?.[0];return e=e.replace(/\n$... method blockquote (line 28) | blockquote(e){return`
method html (line 30) | html(e,n){return e} method heading (line 30) | heading(e,n,t){return`${e} method hr (line 31) | hr(){return`
method list (line 32) | list(e,n,t){const s=n?"ol":"ul",r=n&&t!==1?' start="'+t+'"':"";return"... method listitem (line 34) | listitem(e,n,t){return`
  • ${e}
  • method checkbox (line 35) | checkbox(e){return"${e}`} method em (line 43) | em(e){return`${e}`} method codespan (line 43) | codespan(e){return`${e}`} method br (line 43) | br(){return"
    "} method del (line 43) | del(e){return`${e}`} method link (line 43) | link(e,n,t){const s=tn(e);if(s===null)return t;e=s;let r='{const r={...s},i={...this.defaults,...r};this.de... method #t (line 44) | #t(e,n){return t=>{if(t.message+=` function b (line 45) | function b(c,e){return ge.parse(c,e)} function G (line 45) | function G(c){return function(e){for(var n=arguments.length,t=new Array(... function $i (line 45) | function $i(c){return function(){for(var e=arguments.length,n=new Array(... function k (line 45) | function k(c,e){let n=arguments.length>2&&arguments[2]!==void 0?argument... function Ii (line 45) | function Ii(c){for(let e=0;e0&&arguments[0]!==void 0?arguments[... function Ki (line 46) | function Ki(){const c=Fn(Bn),[e,n]=Ze([{message:"How can I help you toda... FILE: src/libre_chat/webapp/_astro/client.XqyIkt4q.js method children (line 1) | get children(){return e()} FILE: src/libre_chat/webapp/_astro/nanostores.RVhpkXze.js function T (line 1) | function T(n){let e=n[y];if(!e&&(Object.defineProperty(n,y,{value:e=new ... function w (line 1) | function w(n){let e;return n!=null&&typeof n=="object"&&(n[y]||!(e=Objec... function S (line 1) | function S(n,e=new Set){let f,o,i,l;if(f=n!=null&&n[C])return f;if(!w(n)... function E (line 1) | function E(n,e){let f=n[e];return f||Object.defineProperty(n,e,{value:f=... function v (line 1) | function v(n,e,f){if(n[e])return n[e];const[o,i]=W(f,{equals:!1,internal... function B (line 1) | function B(n,e){const f=Reflect.getOwnPropertyDescriptor(n,e);return!f||... function F (line 1) | function F(n){L()&&v(E(n,j),N)()} function Q (line 1) | function Q(n){return F(n),Reflect.ownKeys(n)} method get (line 1) | get(n,e,f){if(e===C)return n;if(e===y)return f;if(e===K)return F(n),f;co... method has (line 1) | has(n,e){return e===C||e===y||e===K||e===j||e===O||e==="__proto__"?!0:(L... method set (line 1) | set(){return!0} method deleteProperty (line 1) | deleteProperty(){return!0} function b (line 1) | function b(n,e,f,o=!1){if(!o&&n[e]===f)return;const i=n[e],l=n.length;f=... function U (line 1) | function U(n,e){const f=Object.keys(e);for(let o=0;o1){o=e.shift();const t=typeof... function q (line 1) | function q(...[n,e]){const f=S(n||{}),o=Array.isArray(f),i=T(f);function... function P (line 1) | function P(n,e,f,o,i){const l=e[f];if(n===l)return;const t=Array.isArray... function H (line 1) | function H(n,e={}){const{merge:f,key:o="id"}=e,i=S(n);return l=>{if(!w(l... function x (line 1) | function x(n){let e=n.get(),[f,o]=Y(e),i=n.subscribe(o);return z(()=>i()... function Y (line 1) | function Y(n){let[e,f]=q({value:n});return[()=>e.value,o=>{let i=S(e.val... method get (line 1) | get(){return o.lc||o.listen(()=>{})(),o.value} method listen (line 1) | listen(i,l){return o.lc=f.push(i,l||o.l)/2,()=>{let t=f.indexOf(i);~t&&(... method notify (line 1) | notify(i){let l=!h.length;for(let t=0;tK(t()));return n.toArray=()=>{const ... function we (line 1) | function we(){return O||(O=ne())} function ie (line 1) | function ie(){if(this.sources&&this.state)if(this.state===T)B(this);else... function le (line 1) | function le(e,t,n){let s=e.value;return(!e.comparator||!e.comparator(s,t... function B (line 1) | function B(e){if(!e.fn)return;q(e);const t=Y;Ae(e,e.value,t)} function Ae (line 1) | function Ae(e,t,n){let s;const i=d,r=h;h=d=e;try{s=e.fn(t)}catch(f){retu... function W (line 1) | function W(e,t,n,s=T,i){const r={fn:e,state:s,updatedAt:null,owned:null,... function _ (line 1) | function _(e){if(e.state===0)return;if(e.state===I)return U(e);if(e.susp... function P (line 1) | function P(e,t){if(b)return e();let n=!1;t||(b=[]),m?n=!0:m=[],Y++;try{c... function Se (line 1) | function Se(e){if(b&&(re(b),b=null),e)return;const t=m;m=null,t.length&&... function re (line 1) | function re(e){for(let t=0;ti=$(()=>(d.contex... function X (line 1) | function X(e){for(let t=0;t1?[]:null;return... function Te (line 1) | function Te(){ue=!0} function Ne (line 1) | function Ne(e,t){if(ue&&u.context){const n=u.context;N(de());const s=$((... function _e (line 1) | function _e(e){const t="fallback"in e&&{fallback:()=>e.fallback};return ... function Ue (line 1) | function Ue(e){let t=0,n,s,i,r,f;const[l,a]=V(!1),c=we(),o={increment:()... function He (line 1) | function He(e,t,n){let s=n.length,i=t.length,r=s,f=0,l=0,a=t[i-1].nextSi... function Le (line 1) | function Le(e,t,n,s={}){let i;return F(r=>{i=r,t===document?e():Pe(t,e()... function De (line 1) | function De(e,t,n){let s;const i=()=>{const f=document.createElement("te... function Ye (line 1) | function Ye(e,t=window.document){const n=t[Q]||(t[Q]=new Set);for(let s=... function qe (line 1) | function qe(e,t,n){!u.context&&(e[t]=n)} function Re (line 1) | function Re(e,t,n){u.context||(n==null?e.removeAttribute(t):e.setAttribu... function Ve (line 1) | function Ve(e,t){u.context||(t==null?e.removeAttribute("class"):e.classN... function Ke (line 1) | function Ke(e,t,n){return $(()=>e(t,n))} function Pe (line 1) | function Pe(e,t,n,s){if(n!==void 0&&!s&&(s=[]),typeof t!="function")retu... function Fe (line 1) | function Fe(e,t,n={}){u.completed=globalThis._$HY.completed,u.events=glo... function Ge (line 1) | function Ge(e){let t,n;return!u.context||!(t=u.registry.get(n=Be()))?e()... function We (line 1) | function We(e){let t=e,n=0,s=[];if(u.context)for(;t;){if(t.nodeType===8)... function Xe (line 1) | function Xe(){u.events&&!u.events.queued&&(queueMicrotask(()=>{const{com... function ce (line 1) | function ce(e){const t=`$$${e.type}`;let n=e.composedPath&&e.composedPat... function D (line 1) | function D(e,t,n,s,i){if(u.context){!n&&(n=[...e.childNodes]);let l=[];f... function G (line 1) | function G(e,t,n,s){let i=!1;for(let r=0,f=t.length;r None: function test_get_prompt_conversation (line 30) | def test_get_prompt_conversation() -> None: function test_websocket_prompt_conversation (line 38) | def test_websocket_prompt_conversation() -> None: function test_get_gradio_ui (line 51) | def test_get_gradio_ui() -> None: FILE: tests/test_api_qa.py function test_websocket_prompt_vectorstore_qa (line 18) | def test_websocket_prompt_vectorstore_qa() -> None: function test_documents_success_upload (line 32) | def test_documents_success_upload() -> None: function test_documents_success_list (line 48) | def test_documents_success_list() -> None: function test_wrong_pass (line 58) | def test_wrong_pass() -> None: function test_documents_empty_files (line 76) | def test_documents_empty_files() -> None: function test_get_config (line 85) | def test_get_config() -> None: function test_post_config (line 92) | def test_post_config() -> None: FILE: tests/test_cli.py function test_help (line 11) | def test_help() -> None: function test_version (line 16) | def test_version() -> None: function test_build (line 21) | def test_build() -> None: function test_build_no_args (line 36) | def test_build_no_args() -> None: function test_start (line 50) | def test_start(mock_run: MagicMock) -> None: FILE: tests/test_llm.py function test_query_vectorstore_capital (line 13) | def test_query_vectorstore_capital() -> None: function test_query_vectorstore_gdp (line 20) | def test_query_vectorstore_gdp() -> None: function test_failed_empty_query (line 32) | def test_failed_empty_query() -> None: function test_failed_empty_aquery (line 40) | async def test_failed_empty_aquery() -> None: function test_build_vectorstore (line 47) | def test_build_vectorstore() -> None: function test_build_failed_no_docs (line 58) | def test_build_failed_no_docs() -> None: function test_similarity_score_threshold (line 72) | def test_similarity_score_threshold() -> None: function test_documents_dir_dont_exist (line 82) | def test_documents_dir_dont_exist() -> None: function test_llm_failed_no_prompt_variables (line 91) | def test_llm_failed_no_prompt_variables() -> None: function test_no_prompt_template (line 98) | def test_no_prompt_template() -> None: FILE: tests/test_utils.py function test_no_conf_file (line 9) | def test_no_conf_file() -> None: function test_chat_response (line 15) | def test_chat_response() -> None: function test_download_file_fail (line 25) | def test_download_file_fail() -> None: function test_parallel_download_success (line 31) | def test_parallel_download_success() -> None: