hard-chill-response's Introduction
hard-chill-response's People
hard-chill-response's Issues
US_2: Exp of prompting for users
"As a user, I want to interact with the bot in the simplest possible way, using templates / ready-made promts / "simple" promts and get the most complete and accurate result"
Based on research here and here
- Before user input - hidden prepromt for model role
"as an expert in next domain, ..."
("first chains" ref here https://www.promptingguide.ai/ru/techniques/prompt_chaining or like here https://github.com/rodion-m/awesome_ai_for_programmers?tab=readme-ov-file#царь-промпты) - Healthy prompt injections - integrate ref here https://github.com/rodion-m/awesome_ai_for_programmers?tab=readme-ov-file#промпт-тюнинг
- Input format - 1-3 steps with pre-made buttons with already prepared prompts to set up a follow-up model response
- Input format - additional step with free text input
- Output format - pre-made buttons for text and table variants of output - maybe part of pnt. 2
CI: Run tests on PR
Run tests on pull requests
Add CI
Check code quality withmake lint
command
Arch: Port for user question
User ask question somehow (telegram for now) and recevie an comprehensive answer, with documents or citations from them
Pydantic.dataclass trouble with Pycharm
Succesfully found one small inconvenience provided by using pydantic dataclasses.
Not a big news, because JetBrains already aware of this case, bring the proof.
As a workaround you can install Pydantic plugin to Pycharm for now, not a best solution but it brings away annoying yellow underline.
Create abc adapter for docs
Part of #11
Vector Database Landing Mission
Based on QA with RAG user story we definetely want to put bunch of embeddings somewhere 🧺
LangChain already have interfaces for vast amount of vector stores 💝
Hexagonal architecture allows us not to think about a specific tool yet ( OpenSearch / Clickhouse / ChromaDb / etc ).
I will wrap up the implementation of ports for interacting with vector storage firstly, and than we can choose solution according of our restrictions and inner wishes.
US_3: Exp of knowledge fullness and correctness for users
"As a user, I want to have the most complete and most correct answers based on the documents used"
Arch: Ports for ingestion of text documents
In telegram we can ingest many types of documents:
application.add_handler(MessageHandler(filters.Document.Category('application/pdf'), downloader))
application.add_handler(MessageHandler(filters.Document.Category('application/msword'), downloader))
application.add_handler(MessageHandler(filters.Document.Category('application/vnd.openxmlformats-officedocument.wordprocessingml.document'), downloader))
application.add_handler(MessageHandler(filters.Document.Category('application/vnd.ms-powerpoint'), downloader))
application.add_handler(MessageHandler(filters.Document.Category('application/vnd.openxmlformats-officedocument.presentationml.presentation'), downloader))
application.add_handler(MessageHandler(filters.Document.Category('text/plain'), downloader))
Application need input port for documents and implement different adapters for different doc types.
So ports wanted
Arch: llm interactions observability
Definetely want to add some observability to our spaceshiip. And, if LangSmith still in closed beta we should looks for something more open for us.
My suggestions:
https://github.com/Arize-ai/phoenix ( opentelemetry in readmy file and attempt for embedding visualisations )
https://github.com/langfuse/langfuse
@trollknurr
Maybe you know something better or sexier for this kind of intension?
US_1: Exp of work with files for users
"As a user, I want to be able to upload text documents to the repository and receive responses from the bot according to the information in these text documents"
- Document upload - shared per client, access via a tg-bot (upload to files - ref https://github.com/sazonovanton/SirChatalot#files )
- Document upload - single-level storage (without folders), limited set of formats (.txt)
- Document processing - processing of received documents begins asynchronously to the operation of the tg-bot
- Document processing - push to the tg-bot with the file name (?) after including it in the storage - ** notifying all users? There will be spam, use timer or separated command in a tg-bot
/check_files
** - Bot answers - automatic updating (?) with the inclusion of document embeddings in the answers - idk, do I need additional squats with a context reboot?
Attach giga mega super logging solution
На всякий случай делюсь соской, довольно таки simple, но не слишком cool, потом может принесем с собой https://github.com/Delgan/loguru
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.