-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enable RAG flow with extensions without UI #17
Comments
The more I think about this, the more I'm convinced that this is the right way to do this. Thanks @costrouc for pushing hard here. |
I like this because it makes programatic usage much simpler and makes implementing workflows like what I just suggested in #18 fairly straightforward. |
I'd throw
Yeah reading your reasoning on those three bullet points I get how we don't want automatic registration. And since we don't want automatic registration there really isn't much advantage over having a good base class and importing implementations. To anticipate some base things I think we might be need. I know that many of these are already written.
But honestly as is the framework is already in a place that we could use. I also think it is possible to have some higher level abstractions? Maybe this is out of scope but I think many of these actions would be quite common and I anticipate us needing them.
|
Sure. My current plan is for
These are analysis tasks. I feel this is out of scope for the orchestration layer. Discussed this with @Adam-D-Lewis yesterday. We will log the input and output of the LLM, so the information is there. This could be funneled into a tool like splunk for the analyst to access. Even if such a tool is not available, we also provide a hook to configure the logger: ragna/ragna/_backend/hookspecs.py Lines 28 to 30 in 9b73a79
So users can put any kind of storing logic in there.
Not sure if I understand this correctly, but isn't that exactly what
That is a reasonable thing to have to give admins a way to manually perform maintenance tasks without going through the regular RAG workflow. Should be fairly simple to implement if we have the backend properly set up like I suggested above. |
Great I think we are on the same page 😄 |
Working on this on the |
This addresses 3. from #16 (comment).
Imagine, we have a standalone
ragna-core
package, which is just the current backend, i.e. the "black box classes", withpanel
completely stripped out. From the technical side, how are we going to register any kind of plugins there?pytest
, because you don't have also pass the extensions that you are using. But this is not the case here so I want this to be explicit.ragna_core.register_extension()
function, that registers this globally.One design that would be possible could look like this:
cc @Adam-D-Lewis @costrouc
The text was updated successfully, but these errors were encountered: