-
Notifications
You must be signed in to change notification settings - Fork 12.2k
Implement s3:// protocol #11511
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
Implement s3:// protocol #11511
Conversation
d088b6a
to
df55a0c
Compare
This is ready for review @ngxson |
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 don't know much about s3 bucket API, so I only reviewed based on code semantic for this PR.
For those that want to pull from s3 Signed-off-by: Eric Curtin <[email protected]>
@ericcurtin, Please replace the hardcoded URL with a user-defined one for custom endpoints, such as local MinIO. Also, if the model is downloaded from S3 to the local filesystem, it's acceptable but not ideal. Is it possible to load the model directly to the vram/ram from S3? (For example, you might try this in the next PR.) |
@ngxson The comment I wrote points out the rigidity of relying on a predefined endpoint and critiques the approach of loading a model directly from an internet-hosted S3 bucket, arguing that this scenario is likely uncommon. Instead, I emphasized the practicality of using a locally hosted S3 instance, which seems more applicable in real-world use cases. |
@lexasub I don't actually know that much about s3:// , I'm putting in just enough to have some sort of initial implementation we can enhance and expand upon. If you opened PRs making this even better I think that would be super cool, I don't even know what MinIO is for example. |
We have discussed eventually moving this protocol stuff to more llama.cpp binaries like llama-server, just trying to mature it a bit in llama-run first. |
I'd +1 the MinIO thing in a followup PR. MinIO is basically local (self-hosted) S3. The ability to change the endpoint would allow users to pull from their own MinIO instance (for example, from a NAS with many TB of storage). |
For those that want to pull from s3 Signed-off-by: Eric Curtin <[email protected]>
For those that want to pull from s3 Signed-off-by: Eric Curtin <[email protected]>
For those that want to pull from s3 Signed-off-by: Eric Curtin <[email protected]>
For those that want to pull from s3 Signed-off-by: Eric Curtin <[email protected]>
For those that want to pull from s3