diff --git a/Cargo.lock b/Cargo.lock index 25745b4248..d639dfddfe 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1711,13 +1711,27 @@ name = "candle-onnx" version = "0.8.3" dependencies = [ "anyhow", - "candle-core 0.8.3", - "candle-nn 0.8.3", + "candle-core 0.0.0", + "candle-nn 0.0.0", "clap", "prost", "prost-build", ] +[[package]] +name = "candle-pyo3" +version = "0.0.0" +dependencies = [ + "accelerate-src", + "candle-core 0.0.0", + "candle-nn 0.0.0", + "candle-onnx", + "half", + "intel-mkl-src", + "pyo3", + "pyo3-build-config", +] + [[package]] name = "candle-transformers" version = "0.8.2" @@ -5282,6 +5296,12 @@ dependencies = [ "web-time", ] +[[package]] +name = "indoc" +version = "2.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5" + [[package]] name = "infer" version = "0.2.3" @@ -8226,6 +8246,69 @@ dependencies = [ "version_check", ] +[[package]] +name = "pyo3" +version = "0.22.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f402062616ab18202ae8319da13fa4279883a2b8a9d9f83f20dbade813ce1884" +dependencies = [ + "cfg-if 1.0.0", + "indoc", + "libc", + "memoffset 0.9.0", + "once_cell", + "portable-atomic", + "pyo3-build-config", + "pyo3-ffi", + "pyo3-macros", + "unindent", +] + +[[package]] +name = "pyo3-build-config" +version = "0.22.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b14b5775b5ff446dd1056212d778012cbe8a0fbffd368029fd9e25b514479c38" +dependencies = [ + "once_cell", + "target-lexicon", +] + +[[package]] +name = "pyo3-ffi" +version = "0.22.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ab5bcf04a2cdcbb50c7d6105de943f543f9ed92af55818fd17b660390fc8636" +dependencies = [ + "libc", + "pyo3-build-config", +] + +[[package]] +name = "pyo3-macros" +version = "0.22.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fd24d897903a9e6d80b968368a34e1525aeb719d568dba8b3d4bfa5dc67d453" +dependencies = [ + "proc-macro2", + "pyo3-macros-backend", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "pyo3-macros-backend" +version = "0.22.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36c011a03ba1e50152b4b394b479826cad97e7a21eb52df179cd91ac411cbfbe" +dependencies = [ + "heck 0.5.0", + "proc-macro2", + "pyo3-build-config", + "quote", + "syn 2.0.87", +] + [[package]] name = "qoi" version = "0.4.1" @@ -12029,6 +12112,12 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39ec24b3121d976906ece63c9daad25b85969647682eee313cb5779fdd69e14e" +[[package]] +name = "unindent" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7de7d73e1754487cb58364ee906a499937a0dfabd86bcb980fa99ec8c8fa2ce" + [[package]] name = "unreachable" version = "1.0.0" diff --git a/Cargo.toml b/Cargo.toml index eb05ae5b4c..5d0dccf425 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -99,6 +99,7 @@ members = [ "crates/vendor/candle/candle-core", "crates/vendor/candle/candle-datasets", "crates/vendor/candle/candle-flash-attn", + "crates/vendor/candle/candle-pyo3", "crates/vendor/candle/candle-kernels", "crates/vendor/candle/candle-metal-kernels", "crates/vendor/candle/candle-nn", diff --git a/crates/vendor/candle/candle-onnx/Cargo.toml b/crates/vendor/candle/candle-onnx/Cargo.toml index 5ff747b244..bd2c81297c 100644 --- a/crates/vendor/candle/candle-onnx/Cargo.toml +++ b/crates/vendor/candle/candle-onnx/Cargo.toml @@ -10,10 +10,8 @@ categories = ["science"] license = "MIT OR Apache-2.0" [dependencies] -#candle = { path = "../candle-core", package = "candle-core", version = "0.8.3" } -#candle-nn = { path = "../candle-nn", version = "0.8.3" } -candle = { package = "candle-core", version = "0.8.3" } -candle-nn = { package = "candle-nn", version = "0.8.3" } +candle = { path = "../candle-core", package = "candle-core" } +candle-nn = { path = "../candle-nn", package = "candle-nn" } prost = "0.12.1" [build-dependencies] diff --git a/crates/vendor/candle/candle-pyo3/Cargo.toml b/crates/vendor/candle/candle-pyo3/Cargo.toml index d91619fbb3..abe7e49016 100644 --- a/crates/vendor/candle/candle-pyo3/Cargo.toml +++ b/crates/vendor/candle/candle-pyo3/Cargo.toml @@ -1,25 +1,18 @@ [package] name = "candle-pyo3" -version.workspace = true -edition.workspace = true -description.workspace = true -repository.workspace = true -keywords.workspace = true -categories.workspace = true -license.workspace = true -readme = "README.md" +edition = "2021" [lib] name = "candle" crate-type = ["cdylib"] [dependencies] -accelerate-src = { workspace = true, optional = true } -candle = { workspace = true } -candle-nn = { workspace = true } -candle-onnx = { workspace = true, optional = true } -half = { workspace = true } -intel-mkl-src = { workspace = true, optional = true } +accelerate-src = { version = "0.3.2" , optional = true } +candle = { path = "../candle-core", package = "candle-core" } +candle-nn = { path = "../candle-nn", package = "candle-nn" } +candle-onnx = { path = "../candle-onnx", optional = true} +half = { version = "2.3.1", features = ["num-traits", "use-intrinsics", "rand_distr"] } +intel-mkl-src = { version = "0.8.1", features = ["mkl-static-lp64-iomp"], optional = true } pyo3 = { version = "0.22.0", features = ["extension-module", "abi3-py311"] } [build-dependencies]