Skip to content

Commit 7b134b8

Browse files
committed
People search for ollama models using the web ui, this change allows one to copy the url from the browser and for it to be compatible with llama-run. Signed-off-by: Eric Curtin <[email protected]>
1 parent b636228 commit 7b134b8

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

examples/run/run.cpp

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -674,9 +674,9 @@ class LlamaData {
674674
}
675675

676676
int github_dl(const std::string & model, const std::string & bn) {
677-
std::string repository = model;
678-
std::string branch = "main";
679-
size_t at_pos = model.find('@');
677+
std::string repository = model;
678+
std::string branch = "main";
679+
const size_t at_pos = model.find('@');
680680
if (at_pos != std::string::npos) {
681681
repository = model.substr(0, at_pos);
682682
branch = model.substr(at_pos + 1);
@@ -694,9 +694,9 @@ class LlamaData {
694694
return 1;
695695
}
696696

697-
const std::string org = repo_parts[0];
698-
const std::string project = repo_parts[1];
699-
std::string project_path = repo_parts[2];
697+
const std::string & org = repo_parts[0];
698+
const std::string & project = repo_parts[1];
699+
std::string project_path = repo_parts[2];
700700
for (size_t i = 3; i < repo_parts.size(); ++i) {
701701
project_path += "/" + repo_parts[i];
702702
}
@@ -741,13 +741,15 @@ class LlamaData {
741741
} else if (string_starts_with(model_, "hf.co/")) {
742742
rm_until_substring(model_, "hf.co/");
743743
ret = huggingface_dl(model_, bn);
744-
} else if (string_starts_with(model_, "https://") || string_starts_with(model_, "http://")) {
744+
} else if ((string_starts_with(model_, "https://") || string_starts_with(model_, "http://")) &&
745+
!string_starts_with(model_, "https://ollama.com/library/")) {
745746
ret = download(model_, bn, true);
746747
} else if (string_starts_with(model_, "github:") || string_starts_with(model_, "github://")) {
747748
rm_until_substring(model_, "github://");
748749
rm_until_substring(model_, "github:");
749750
ret = github_dl(model_, bn);
750751
} else { // ollama:// or nothing
752+
rm_until_substring(model_, "ollama.com/library/");
751753
rm_until_substring(model_, "://");
752754
ret = ollama_dl(model_, bn);
753755
}

0 commit comments

Comments
 (0)