diff --git a/examples/advanced-local-rag/backend/main.py b/examples/advanced-local-rag/backend/main.py index 8934187..7a610a0 100644 --- a/examples/advanced-local-rag/backend/main.py +++ b/examples/advanced-local-rag/backend/main.py @@ -68,8 +68,13 @@ def generate_stream(messages: List[Message], context: str = "") -> TextIteratorS input_text = tokenizer.apply_chat_template(formatted_messages, tokenize=False) inputs = tokenizer.encode(input_text, return_tensors="pt").to(device) - # 2) Create the streamer (handles partial text as tokens arrive) - streamer = TextIteratorStreamer(tokenizer, skip_prompt=True) + # 2) Create the streamer with skip_prompt and skip_special_tokens + streamer = TextIteratorStreamer( + tokenizer, + skip_prompt=True, + skip_special_tokens=True, + timeout=10.0 + ) # 3) Define a thread function that does generation def run_generation(): diff --git a/examples/advanced-local-rag/frontend/package-lock.json b/examples/advanced-local-rag/frontend/package-lock.json index 64342a9..4c9e06a 100644 --- a/examples/advanced-local-rag/frontend/package-lock.json +++ b/examples/advanced-local-rag/frontend/package-lock.json @@ -29,7 +29,7 @@ } }, "../../../lexio": { - "version": "0.0.3", + "version": "0.1.0", "license": "GPL-3.0-or-later", "dependencies": { "@floating-ui/react": "^0.27.3", @@ -43,6 +43,7 @@ "react-hotkeys-hook": "^4.6.1", "react-markdown": "^9.0.3", "react-pdf": "^9.1.1", + "react-syntax-highlighter": "^15.6.1", "react-toastify": "^10.0.6", "remark-gfm": "^4.0.0" }, @@ -66,6 +67,7 @@ "@types/node": "^22.10.1", "@types/react": "^18.3.12", "@types/react-dom": "^18.3.1", + "@types/react-syntax-highlighter": "^15.5.13", "@vitejs/plugin-react": "^4.3.4", "@vitest/coverage-v8": "^2.1.8", "autoprefixer": "^10.4.20", diff --git a/examples/advanced-local-rag/frontend/src/App.tsx b/examples/advanced-local-rag/frontend/src/App.tsx index cee15b3..b5e04ee 100644 --- a/examples/advanced-local-rag/frontend/src/App.tsx +++ b/examples/advanced-local-rag/frontend/src/App.tsx @@ -1,7 +1,7 @@ import { useCallback, useMemo } from 'react'; import { ChatWindow, - RAGProvider, + LexioProvider, SourcesDisplay, ContentDisplay, AdvancedQueryField, @@ -135,7 +135,7 @@ function App() { // 4) Provide the SSE connector and the REST content source to the RAGProvider return (
- {/* Handle any encountered errors */} - +
); } diff --git a/lexio/lib/components/ChatWindow/AssistantMarkdownContent.css b/lexio/lib/components/ChatWindow/AssistantMarkdownContent.css index 4768ba3..fafe3fe 100644 --- a/lexio/lib/components/ChatWindow/AssistantMarkdownContent.css +++ b/lexio/lib/components/ChatWindow/AssistantMarkdownContent.css @@ -43,18 +43,18 @@ /* Lists */ .assistant-markdown-content ul { - white-space: nowrap; + white-space: normal; margin-top: 6px; margin-bottom: 6px; - list-style: disc inside; + list-style: disc outside; padding-left: 10px; } .assistant-markdown-content ol { - white-space: nowrap; + white-space: normal; margin-top: 6px; margin-bottom: 6px; - list-style: decimal inside; + list-style: decimal outside; padding-left: 10px; }