[package]
edition = "2024"
rust-version = "1.95"
name = "ffai-argus"
version = "0.7.3"
authors = ["Remade With Rust"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Argus — FFai's VLM component: image captioning and video understanding"
readme = "README.md"
keywords = [
"vlm",
"image-captioning",
"computer-vision",
"multimodal",
"captioning",
]
categories = [
"computer-vision",
"multimedia::images",
"science",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/Remade-With-Rust/FFai"
resolver = "2"
[features]
fetch = ["ffai-models/fetch"]
mistralrs-backend = []
[lib]
name = "ffai_argus"
path = "src/lib.rs"
[[example]]
name = "alloc_ab"
path = "examples/alloc_ab.rs"
[[example]]
name = "attn_gemm_probe"
path = "examples/attn_gemm_probe.rs"
[[example]]
name = "batch_gemm_probe"
path = "examples/batch_gemm_probe.rs"
[[example]]
name = "batch_tower_ab"
path = "examples/batch_tower_ab.rs"
[[example]]
name = "bias_cost"
path = "examples/bias_cost.rs"
[[example]]
name = "build_inputs_embeds"
path = "examples/build_inputs_embeds.rs"
[[example]]
name = "caption_arm_ab"
path = "examples/caption_arm_ab.rs"
[[example]]
name = "caption_footprint"
path = "examples/caption_footprint.rs"
[[example]]
name = "caption_stages"
path = "examples/caption_stages.rs"
[[example]]
name = "connector_probe"
path = "examples/connector_probe.rs"
[[example]]
name = "cost_report"
path = "examples/cost_report.rs"
[[example]]
name = "decode_inline_prof"
path = "examples/decode_inline_prof.rs"
[[example]]
name = "embed_probe"
path = "examples/embed_probe.rs"
[[example]]
name = "from_bytes_smoke"
path = "examples/from_bytes_smoke.rs"
[[example]]
name = "gemm_probe"
path = "examples/gemm_probe.rs"
[[example]]
name = "gemm_shapes"
path = "examples/gemm_shapes.rs"
[[example]]
name = "gqa_blocked_attn"
path = "examples/gqa_blocked_attn.rs"
[[example]]
name = "head_split_attn"
path = "examples/head_split_attn.rs"
[[example]]
name = "kernel_ab"
path = "examples/kernel_ab.rs"
[[example]]
name = "kernel_micro_ab"
path = "examples/kernel_micro_ab.rs"
[[example]]
name = "linear_probe"
path = "examples/linear_probe.rs"
[[example]]
name = "matmul_why"
path = "examples/matmul_why.rs"
[[example]]
name = "qk_gemm_probe"
path = "examples/qk_gemm_probe.rs"
[[example]]
name = "quickstart"
path = "examples/quickstart.rs"
[[example]]
name = "stage_split"
path = "examples/stage_split.rs"
[[example]]
name = "text_ab"
path = "examples/text_ab.rs"
[[example]]
name = "text_inline_prof"
path = "examples/text_inline_prof.rs"
[[example]]
name = "text_ops_now"
path = "examples/text_ops_now.rs"
[[example]]
name = "text_ops_probe"
path = "examples/text_ops_probe.rs"
[[example]]
name = "text_scaling"
path = "examples/text_scaling.rs"
[[example]]
name = "tile_batching_ab"
path = "examples/tile_batching_ab.rs"
[[example]]
name = "tile_parallel_ab"
path = "examples/tile_parallel_ab.rs"
[[example]]
name = "tile_sched_ab"
path = "examples/tile_sched_ab.rs"
[[example]]
name = "two_shapes_repro"
path = "examples/two_shapes_repro.rs"
[[example]]
name = "vision_arm_ab"
path = "examples/vision_arm_ab.rs"
[[example]]
name = "vision_inline_prof"
path = "examples/vision_inline_prof.rs"
[[example]]
name = "vision_ops_now"
path = "examples/vision_ops_now.rs"
[[example]]
name = "vision_ops_probe"
path = "examples/vision_ops_probe.rs"
[[test]]
name = "decode_oracle"
path = "tests/decode_oracle.rs"
[[test]]
name = "engine_oracle"
path = "tests/engine_oracle.rs"
[[test]]
name = "preprocess_oracle"
path = "tests/preprocess_oracle.rs"
[[test]]
name = "prompt_oracle"
path = "tests/prompt_oracle.rs"
[[test]]
name = "resize_oracle"
path = "tests/resize_oracle.rs"
[[test]]
name = "siglip_parity"
path = "tests/siglip_parity.rs"
[[test]]
name = "video_oracle"
path = "tests/video_oracle.rs"
[[test]]
name = "vision_oracle"
path = "tests/vision_oracle.rs"
[dependencies.candle-core]
version = "0.11"
[dependencies.candle-nn]
version = "0.11"
[dependencies.candle-transformers]
version = "0.11"
[dependencies.ffai-core]
version = "0.7.1"
[dependencies.ffai-models]
version = "0.6.4"
default-features = false
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.tokenizers]
version = "0.23"
features = ["onig"]
default-features = false
[dev-dependencies.rusty_alloc-api]
version = "=1.1.6"
[dev-dependencies.serde_json]
version = "1"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.rayon]
version = "1"
[target.'cfg(target_arch = "wasm32")'.dependencies.getrandom]
version = "0.3"
features = ["wasm_js"]
[lints.clippy]
cast_possible_truncation = "allow"
cast_possible_wrap = "allow"
cast_precision_loss = "allow"
cast_sign_loss = "allow"
doc_markdown = "allow"
inline_always = "allow"
manual_let_else = "allow"
many_single_char_names = "allow"
missing_errors_doc = "allow"
needless_pass_by_value = "allow"
option_if_let_else = "allow"
suboptimal_flops = "allow"
too_long_first_doc_paragraph = "allow"
too_many_lines = "allow"
[lints.clippy.nursery]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
unsafe_code = "warn"