feat: Note that duckdb RAG driver is unavailable on MUSL Linux builds when initializing a RAG so users know when using the binary, not just based on docs
This commit is contained in:
+10
-4
@@ -1869,12 +1869,17 @@ fn select_embedding_model(models: &[&Model]) -> Result<String> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub(crate) fn select_rag_driver() -> Result<String> {
|
pub(crate) fn select_rag_driver() -> Result<String> {
|
||||||
// Statically linked musl builds cannot dlopen DuckDB extensions, so duckdb is not offered there.
|
|
||||||
#[cfg(target_env = "musl")]
|
#[cfg(target_env = "musl")]
|
||||||
let options = vec![
|
{
|
||||||
"yaml — portable, in-memory HNSW; usable from several Coyote processes at once (default)",
|
println!(
|
||||||
];
|
"Note: the duckdb RAG driver is only available in GNU builds of coyote \
|
||||||
|
(musl builds are statically linked and cannot load DuckDB extensions). \
|
||||||
|
Using the yaml driver."
|
||||||
|
);
|
||||||
|
Ok("yaml".to_string())
|
||||||
|
}
|
||||||
#[cfg(not(target_env = "musl"))]
|
#[cfg(not(target_env = "musl"))]
|
||||||
|
{
|
||||||
let options = vec![
|
let options = vec![
|
||||||
"yaml — portable, in-memory HNSW; usable from several Coyote processes at once (default)",
|
"yaml — portable, in-memory HNSW; usable from several Coyote processes at once (default)",
|
||||||
"duckdb — persistent on-disk store; vectors and content survive restarts; HNSW approximate search.",
|
"duckdb — persistent on-disk store; vectors and content survive restarts; HNSW approximate search.",
|
||||||
@@ -1893,6 +1898,7 @@ pub(crate) fn select_rag_driver() -> Result<String> {
|
|||||||
} else {
|
} else {
|
||||||
Ok("yaml".to_string())
|
Ok("yaml".to_string())
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const EXTRACTOR_SKIP: &str = "Skip";
|
const EXTRACTOR_SKIP: &str = "Skip";
|
||||||
|
|||||||
Reference in New Issue
Block a user