-
Notifications
You must be signed in to change notification settings - Fork 57
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
Implements #381 Expose all available checkpoints for a retriever via … #387
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's add a common utility function in retriever component and/or colBERTRetriever class that can populate/tweak parameters beyond default values. That function then can be called from Factory methods and/or directly from services.
|
||
# Custom behavior: Add checkpoints as options in checkpoint parameter: | ||
try: | ||
colbert_component = next(component for component in retrievers if component.retriever_id == 'ColBERTRetriever') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@hrojek If I am not mistaken in future release @franzmpub might expose retriever based on DPR. That one will also have checkpoint parameter. So maybe Let's try to move this to a common function in retriever class or ColBERTRetriever class that gets called from to populate options for checkpoint.
{ | ||
"retriever_id": retriever_id, | ||
"parameters": generate_parameters(retriever), | ||
} | ||
for retriever_id, retriever in RETRIEVERS_REGISTRY.items() | ||
] | ||
try: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same comment as above.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I do not have a lot of experience with this code but it looks good to me. I agree with @kpfadnis to make it general for any retriever.
@hrojek : could you please handle the PR reviews/comment on them |
…service layer
Pull Request
What does this PR do?
Closes #381
Notes:
(issue)
above ↑↑↑ with the issue this PR closes to automatically link the two.This must be done when the PR is created.
Closes #(issue)
as needed.Closes
.Description
Describe the changes proposed by this PR below to give the reviewer context below ↓↓↓
Implements a method in the Store class for inspecting the
checkpoints
store directory and exposing them as options in thecheckpoint
parameter of theColBERTRetriever
.Request Review
Be sure to request a review from one or more reviewers (unless the PR is to an unprotected branch).
Versioning
When opening a PR to make changes to PrimeQA (i.e.
primeqa/
) master, be sure to increment the version followingsemantic versioning. The VERSION is stored here
and is incremented using
bump2version {patch,minor,major}
as described in the (development guide documentation)[development.html].primeqa
package or was not into master?After pulling in changes from master to an existing PR, ensure the VERSION is updated appropriately.
This may require bumping the version again if it has been previously bumped.
If you're not quite ready yet to post a PR for review, feel free to open a draft PR.
Releases
After Merging
If merging into master and VERSION was updated, after this PR is merged:
Checklist
Review the following and mark as completed: