From ffa94936cd376ca95b93cc943ffa9c34f671c998 Mon Sep 17 00:00:00 2001 From: comonad Date: Fri, 12 Jun 2026 02:18:03 +0800 Subject: [PATCH] chore: serve pytorch-wheels HTML index with cache Also add new mocking tests for pytorch-wheels and nix-channels/store --- Cargo.lock | 241 -- Cargo.toml | 1 - Rocket.toml | 6 - src/common.rs | 55 +- src/main.rs | 1 - src/pypi_index.rs | 902 ------- src/repos.rs | 317 +-- src/storage.rs | 5 +- tests/config/Rocket.toml | 6 - tests/e2e/default.nix | 46 +- tests/e2e/fake_services.py | 161 ++ tests/e2e/simple.sh | 150 +- tests/pytorch_wheels/whl.html | 197 -- tests/pytorch_wheels/whl_cu130.html | 120 - tests/pytorch_wheels/whl_cu130_torch.html | 189 -- tests/pytorch_wheels/whl_torch.html | 3002 --------------------- 16 files changed, 520 insertions(+), 4879 deletions(-) delete mode 100644 src/pypi_index.rs create mode 100644 tests/e2e/fake_services.py delete mode 100644 tests/pytorch_wheels/whl.html delete mode 100644 tests/pytorch_wheels/whl_cu130.html delete mode 100644 tests/pytorch_wheels/whl_cu130_torch.html delete mode 100644 tests/pytorch_wheels/whl_torch.html diff --git a/Cargo.lock b/Cargo.lock index 8422f0e..afcbef9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -885,29 +885,6 @@ dependencies = [ "typenum", ] -[[package]] -name = "cssparser" -version = "0.36.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dae61cf9c0abb83bd659dab65b7e4e38d8236824c85f0f804f173567bda257d2" -dependencies = [ - "cssparser-macros", - "dtoa-short", - "itoa", - "phf", - "smallvec", -] - -[[package]] -name = "cssparser-macros" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331" -dependencies = [ - "quote", - "syn", -] - [[package]] name = "deranged" version = "0.5.8" @@ -962,33 +939,12 @@ dependencies = [ "syn", ] -[[package]] -name = "dtoa" -version = "1.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c3cf4824e2d5f025c7b531afcb2325364084a16806f6d47fbc1f5fbd9960590" - -[[package]] -name = "dtoa-short" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd1511a7b6a56299bd043a9c167a6d2bfb37bf84a6dfceaba651168adfb43c87" -dependencies = [ - "dtoa", -] - [[package]] name = "dunce" version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" -[[package]] -name = "ego-tree" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b04dc5a38e4f151a79d9f2451ae6037fb6eaf5cba34771f44781f80e508498e3" - [[package]] name = "either" version = "1.15.0" @@ -1225,15 +1181,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "getopts" -version = "0.2.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfe4fbac503b8d1f88e6676011885f34b7174f46e59956bba534ba83abded4df" -dependencies = [ - "unicode-width", -] - [[package]] name = "getrandom" version = "0.2.17" @@ -1383,16 +1330,6 @@ dependencies = [ "digest", ] -[[package]] -name = "html5ever" -version = "0.39.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46a1761807faccc9a19e86944bbf40610014066306f96edcdedc2fb714bcb7b8" -dependencies = [ - "log", - "markup5ever", -] - [[package]] name = "http" version = "0.2.12" @@ -1894,17 +1831,6 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "112b39cec0b298b6c1999fee3e31427f74f676e4cb9879ed1a121b43661a4154" -[[package]] -name = "markup5ever" -version = "0.39.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7122d987ec5f704ee56f6e5b41a7d93722e9aae27ae07cafa4036c4d3f9757de" -dependencies = [ - "log", - "tendril", - "web_atoms", -] - [[package]] name = "matchers" version = "0.2.0" @@ -1975,7 +1901,6 @@ dependencies = [ "regex", "reqwest", "rstest", - "scraper", "serde", "serial_test", "tempfile", @@ -1997,12 +1922,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e94e1e6445d314f972ff7395df2de295fe51b71821694f0b0e1e79c4f12c8577" -[[package]] -name = "new_debug_unreachable" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" - [[package]] name = "nu-ansi-term" version = "0.50.3" @@ -2098,59 +2017,6 @@ version = "2.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" -[[package]] -name = "phf" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1562dc717473dbaa4c1f85a36410e03c047b2e7df7f45ee938fbef64ae7fadf" -dependencies = [ - "phf_macros", - "phf_shared", - "serde", -] - -[[package]] -name = "phf_codegen" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49aa7f9d80421bca176ca8dbfebe668cc7a2684708594ec9f3c0db0805d5d6e1" -dependencies = [ - "phf_generator", - "phf_shared", -] - -[[package]] -name = "phf_generator" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "135ace3a761e564ec88c03a77317a7c6b80bb7f7135ef2544dbe054243b89737" -dependencies = [ - "fastrand", - "phf_shared", -] - -[[package]] -name = "phf_macros" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "812f032b54b1e759ccd5f8b6677695d5268c588701effba24601f6932f8269ef" -dependencies = [ - "phf_generator", - "phf_shared", - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "phf_shared" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e57fef6bc5981e38c2ce2d63bfa546861309f875b8a75f092d1d54ae2d64f266" -dependencies = [ - "siphasher", -] - [[package]] name = "pin-project" version = "1.1.11" @@ -2213,12 +2079,6 @@ dependencies = [ "zerocopy", ] -[[package]] -name = "precomputed-hash" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" - [[package]] name = "prettyplease" version = "0.2.37" @@ -2692,21 +2552,6 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" -[[package]] -name = "scraper" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f5297102b8b62b4454ee8561601b2d551b4913148feb4241ca9d1a04bf4526" -dependencies = [ - "cssparser", - "ego-tree", - "getopts", - "html5ever", - "precomputed-hash", - "selectors", - "tendril", -] - [[package]] name = "sct" version = "0.7.1" @@ -2746,25 +2591,6 @@ dependencies = [ "libc", ] -[[package]] -name = "selectors" -version = "0.36.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5d9c0c92a92d33f08817311cf3f2c29a3538a8240e94a6a3c622ce652d7e00c" -dependencies = [ - "bitflags", - "cssparser", - "derive_more", - "log", - "new_debug_unreachable", - "phf", - "phf_codegen", - "precomputed-hash", - "rustc-hash", - "servo_arc", - "smallvec", -] - [[package]] name = "semver" version = "1.0.27" @@ -2871,15 +2697,6 @@ dependencies = [ "syn", ] -[[package]] -name = "servo_arc" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "170fb83ab34de17dc69aa7c67482b22218ddb85da56546f9bd6b929e32a05930" -dependencies = [ - "stable_deref_trait", -] - [[package]] name = "sha1" version = "0.10.6" @@ -2939,12 +2756,6 @@ version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbbb5d9659141646ae647b42fe094daf6c6192d1620870b449d9557f748b2daa" -[[package]] -name = "siphasher" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2aa850e253778c88a04c3d7323b043aeda9d3e30d5971937c1855769763678e" - [[package]] name = "slab" version = "0.4.12" @@ -2989,30 +2800,6 @@ version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" -[[package]] -name = "string_cache" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a18596f8c785a729f2819c0f6a7eae6ebeebdfffbfe4214ae6b087f690e31901" -dependencies = [ - "new_debug_unreachable", - "parking_lot", - "phf_shared", - "precomputed-hash", -] - -[[package]] -name = "string_cache_codegen" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "585635e46db231059f76c5849798146164652513eb9e8ab2685939dd90f29b69" -dependencies = [ - "phf_generator", - "phf_shared", - "proc-macro2", - "quote", -] - [[package]] name = "stringmetrics" version = "2.2.2" @@ -3099,16 +2886,6 @@ dependencies = [ "windows-sys 0.61.2", ] -[[package]] -name = "tendril" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4790fc369d5a530f4b544b094e31388b9b3a37c0f4652ade4505945f5660d24" -dependencies = [ - "new_debug_unreachable", - "utf-8", -] - [[package]] name = "thiserror" version = "1.0.69" @@ -3590,12 +3367,6 @@ dependencies = [ "serde", ] -[[package]] -name = "utf-8" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" - [[package]] name = "utf8_iter" version = "1.0.4" @@ -3796,18 +3567,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "web_atoms" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57a9779e9f04d2ac1ce317aee707aa2f6b773afba7b931222bff6983843b1576" -dependencies = [ - "phf", - "phf_codegen", - "string_cache", - "string_cache_codegen", -] - [[package]] name = "webpki-root-certs" version = "1.0.6" diff --git a/Cargo.toml b/Cargo.toml index 4ed94af..311b034 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -36,7 +36,6 @@ tracing-bunyan-formatter = "0.3" tracing-log = "0.2" tracing-subscriber = { version = "0.3", features = ["env-filter"] } url = "2.2" -scraper = "0.26.0" [dev-dependencies] tempfile = "3" diff --git a/Rocket.toml b/Rocket.toml index e524027..99cf0e5 100644 --- a/Rocket.toml +++ b/Rocket.toml @@ -48,9 +48,3 @@ endpoint = "https://s3.jcloud.sjtu.edu.cn" website_endpoint = "https://s3.jcloud.sjtu.edu.cn" bucket = "899a892efef34b1b944a19981040f55b-oss01" sentinel_object_key = "sjtug-internal/mirror-intel/releases/download/v0.1.35/mirror-intel.tar.gz" - -[default.pypi_index] -refresh_secs = 300 -fetch_timeout_secs = 30 -max_depth = 2 -max_pages = 1000 diff --git a/src/common.rs b/src/common.rs index 3a51e6a..6196a5e 100644 --- a/src/common.rs +++ b/src/common.rs @@ -225,49 +225,6 @@ pub struct GithubReleaseConfig { pub allow: Vec, } -/// Configuration for PyPI index page caching. -#[derive(Clone, Deserialize, Debug, Eq, PartialEq)] -pub struct PypiIndexConfig { - /// Refresh interval in seconds (default: 300). - #[serde(default = "PypiIndexConfig::default_refresh_secs")] - pub refresh_secs: u64, - /// Fetch timeout in seconds (default: 30). - #[serde(default = "PypiIndexConfig::default_fetch_timeout_secs")] - pub fetch_timeout_secs: u64, - /// Maximum BFS crawl depth (default: 2). - #[serde(default = "PypiIndexConfig::default_max_depth")] - pub max_depth: usize, - /// Maximum pages to fetch per crawl (default: 1000). - #[serde(default = "PypiIndexConfig::default_max_pages")] - pub max_pages: usize, -} - -impl PypiIndexConfig { - fn default_refresh_secs() -> u64 { - 300 - } - fn default_fetch_timeout_secs() -> u64 { - 30 - } - fn default_max_depth() -> usize { - 2 - } - fn default_max_pages() -> usize { - 1000 - } -} - -impl Default for PypiIndexConfig { - fn default() -> Self { - Self { - refresh_secs: Self::default_refresh_secs(), - fetch_timeout_secs: Self::default_fetch_timeout_secs(), - max_depth: Self::default_max_depth(), - max_pages: Self::default_max_pages(), - } - } -} - /// Global application config. #[derive(Default, Clone, Deserialize, Debug, Eq, PartialEq)] pub struct Config { @@ -316,9 +273,6 @@ pub struct Config { pub buffer_path: PathBuf, /// Worker tasks to serve requests. pub workers: Option, - /// PyPI index caching configuration. - #[serde(default)] - pub pypi_index: PypiIndexConfig, } /// An empty redirect response to a given URL. @@ -424,7 +378,7 @@ mod tests { use crate::Config; use crate::common::{ - EndpointOverride, Endpoints, GithubReleaseConfig, PypiIndexConfig, S3Config, collect_config, + EndpointOverride, Endpoints, GithubReleaseConfig, S3Config, collect_config, }; #[allow(clippy::result_large_err)] @@ -479,12 +433,7 @@ mod tests { ], s3_only: vec!["voidlinux/".into()], }, - pypi_index: PypiIndexConfig { - refresh_secs: 300, - fetch_timeout_secs: 30, - max_depth: 2, - max_pages: 1000, - }, + s3: S3Config { name: "jCloud S3".into(), endpoint: "https://s3.jcloud.sjtu.edu.cn".into(), diff --git a/src/main.rs b/src/main.rs index 5c7d7a3..f4b08b7 100644 --- a/src/main.rs +++ b/src/main.rs @@ -36,7 +36,6 @@ mod browse; mod common; mod error; mod intel_path; -mod pypi_index; mod queue; mod repos; mod storage; diff --git a/src/pypi_index.rs b/src/pypi_index.rs deleted file mode 100644 index 5ac3fe6..0000000 --- a/src/pypi_index.rs +++ /dev/null @@ -1,902 +0,0 @@ -use reqwest::Client; -use reqwest::header::{ETAG, IF_MODIFIED_SINCE, IF_NONE_MATCH, LAST_MODIFIED}; -use scraper::{Html, Selector}; -use std::sync::atomic::Ordering; -use std::time::Duration; -use std::{ - collections::{HashMap, HashSet, VecDeque}, - sync::{RwLock, atomic::AtomicBool}, -}; -use tokio::time::MissedTickBehavior; -use tracing::{debug, warn}; -use url::Url; - -use crate::common::{Config, PypiIndexConfig}; -use crate::error::Error; - -/// Cached data for a single index page -#[derive(Debug, Clone, Default)] -pub struct CachedPage { - pub etag: Option, - pub last_modified: Option, - pub links: Vec, -} - -/// Cache for PyPI index pages with ETag/Last-Modified support -#[derive(Debug, Default)] -pub struct PypiIndexCache { - pages: HashMap, -} - -impl PypiIndexCache { - pub fn new() -> Self { - Self::default() - } - - /// Get cached page data for a relative path - pub fn get(&self, relative_path: &str) -> Option<&CachedPage> { - self.pages.get(relative_path) - } - - /// Insert or update cached page data - pub fn insert(&mut self, relative_path: String, page: CachedPage) { - self.pages.insert(relative_path, page); - } - - /// Get all valid index paths (non-empty paths with links) - pub fn valid_pages(&self) -> Vec { - let mut pages: Vec<_> = self - .pages - .iter() - .filter(|(path, cached)| !path.is_empty() && !cached.links.is_empty()) - .map(|(path, _)| path.clone()) - .collect(); - pages.sort(); - pages - } -} - -/// Result of a conditional fetch operation -#[derive(Debug)] -pub enum FetchResult { - /// Page was fetched successfully (200 OK) - Fetched { - html: String, - etag: Option, - last_modified: Option, - }, - /// Page was not modified (304 Not Modified) - NotModified, - /// Fetch failed - Error(Error), -} - -/// Parse the HTML content of a PyPI index page and extract all href attributes (links) from anchor tags. -pub fn parse_pypi_index(html: &str) -> Vec { - let document = Html::parse_document(html); - let selector = Selector::parse("a").unwrap(); - document - .select(&selector) - .filter_map(|element| element.value().attr("href")) - .map(|href| href.to_string()) - .collect() -} - -/// Normalize a URL path to remove trailing separators (except root "/"). -fn normalize_absolute_path(path: &str) -> String { - let trimmed = path.trim_end_matches('/'); - if trimmed.is_empty() { - "/".to_string() - } else { - trimmed.to_string() - } -} - -/// Normalize a relative path to avoid leading/trailing separators. -fn normalize_relative_path(path: &str) -> String { - path.trim_start_matches('/') - .trim_end_matches('/') - .to_string() -} - -/// Return the directory form of an absolute path, ensuring it ends with "/". -fn directory_path(path: &str) -> String { - let normalized = normalize_absolute_path(path); - if normalized == "/" { - normalized - } else { - format!("{normalized}/") - } -} - -/// Return a copy of the URL with path normalized as a directory. -fn as_directory_url(url: &Url) -> Url { - let mut directory = url.clone(); - directory.set_path(&directory_path(url.path())); - directory -} - -/// Given a root URL and a target URL, return the path of the target URL relative to the root URL -/// if they share the same scheme, host, and port. -fn path_relative_to_root(root: &Url, target: &Url) -> Option { - // Ensure the target URL is within the same origin as the root URL. - if root.scheme() != target.scheme() - || root.host_str() != target.host_str() - || root.port_or_known_default() != target.port_or_known_default() - { - return None; - } - - let root_path = normalize_absolute_path(root.path()); - let target_path = normalize_absolute_path(target.path()); - if target_path == root_path { - return Some(String::new()); - } - - let prefix = directory_path(&root_path); - target_path - .strip_prefix(&prefix) - .map(normalize_relative_path) -} - -/// Check if the link points to a large file. -fn is_largefile_link(link: &str) -> bool { - let trimmed = link - .split_once('#') - .map_or(link, |(before_fragment, _)| before_fragment) - .split_once('?') - .map_or(link, |(before_query, _)| before_query); - trimmed.ends_with(".whl") - || trimmed.ends_with(".tar.gz") - || trimmed.ends_with(".tar.bz2") - || trimmed.ends_with(".tar.xz") - || trimmed.ends_with(".tar.zst") - || trimmed.ends_with(".zip") - || trimmed.ends_with(".exe") -} - -/// Given a parent page URL and a link (href) found in the page, resolve the link to an absolute URL, -/// -/// # Arguments -/// * `root`: The root URL of the PyPI index, used to ensure the resolved URL is within the same domain. -/// * `parent`: The parent page URL -/// * `link`: The link (href) found in the parent page -/// -/// # Return -/// * `Option<(String, Url)>`: -/// The relative path to the root URL, and the resolved absolute URL. -/// Returns None if the link cannot be resolved or is outside the root URL. -/// -/// # Example -/// ``` -/// let root = Url::parse("https://download.pytorch.org/whl").unwrap(); -/// let parent = Url::parse("https://download.pytorch.org/whl/torch/").unwrap(); -/// let link = "../cu130/torch/"; -/// let Some((relative, child)) = resolve_child_url(&root, &parent, link) else { -/// panic!("Failed to resolve child URL"); -/// }; -/// assert_eq!(relative, "cu130/torch"); -/// assert_eq!(child.as_str(), "https://download.pytorch.org/whl/cu130/torch/"); -/// ``` -/// -fn resolve_child_url(root: &Url, parent: &Url, link: &str) -> Option<(String, Url)> { - let child = as_directory_url(parent).join(link).ok()?; - let relative = path_relative_to_root(root, &child)?; - if relative.is_empty() { - return None; - } - - Some((relative, child)) -} - -/// Fetch a page with conditional GET support (ETag/Last-Modified). -/// Returns NotModified if the page hasn't changed, or Fetched with new content. -async fn fetch_page_conditional( - client: &Client, - url: &Url, - cached: Option<&CachedPage>, -) -> FetchResult { - let mut request = client.get(url.clone()); - - // Add conditional headers if we have cached data - if let Some(cached) = cached { - if let Some(ref etag) = cached.etag { - request = request.header(IF_NONE_MATCH, etag); - } - if let Some(ref last_modified) = cached.last_modified { - request = request.header(IF_MODIFIED_SINCE, last_modified); - } - } - - let response = match request.send().await { - Ok(resp) => resp, - Err(e) => return FetchResult::Error(e.into()), - }; - - // 304 Not Modified - use cached data - if response.status() == reqwest::StatusCode::NOT_MODIFIED { - return FetchResult::NotModified; - } - - // Check for errors - if !response.status().is_success() { - return FetchResult::Error(Error::HTTPError(response.status())); - } - - // Extract caching headers - let etag = response - .headers() - .get(ETAG) - .and_then(|v| v.to_str().ok()) - .map(|s| s.to_string()); - let last_modified = response - .headers() - .get(LAST_MODIFIED) - .and_then(|v| v.to_str().ok()) - .map(|s| s.to_string()); - - // Get body - match response.text().await { - Ok(html) => FetchResult::Fetched { - html, - etag, - last_modified, - }, - Err(e) => FetchResult::Error(e.into()), - } -} - -/// Fetch PyPI index with caching support, depth limits, and page limits. -/// -/// On first call (empty cache), performs full BFS crawl up to max_depth. -/// On subsequent calls, uses conditional requests to only re-fetch changed pages. -/// -/// # Arguments -/// * `client`: HTTP client for requests -/// * `url`: Root PyPI index URL -/// * `cache`: Mutable cache to store/retrieve page data -/// * `config`: PyPI index configuration (max_depth, max_pages) -/// -/// # Returns -/// * `Result, Error>`: List of valid index page paths -pub async fn fetch_pypi_index_cached( - client: &Client, - url: &str, - cache: &mut PypiIndexCache, - config: &PypiIndexConfig, -) -> Result, Error> { - // Get the root page (always fetch root to check for changes) - let root_resp = client.get(url).send().await?; - if !root_resp.status().is_success() { - return Err(Error::HTTPError(root_resp.status())); - } - - let root_url = root_resp.url().clone(); - - let root_etag = root_resp - .headers() - .get(ETAG) - .and_then(|v| v.to_str().ok()) - .map(|s| s.to_string()); - let root_last_modified = root_resp - .headers() - .get(LAST_MODIFIED) - .and_then(|v| v.to_str().ok()) - .map(|s| s.to_string()); - let root_html = root_resp.text().await?; - let root_links = parse_pypi_index(&root_html); - - // Cache the root page - cache.insert( - String::new(), - CachedPage { - etag: root_etag, - last_modified: root_last_modified, - links: root_links.clone(), - }, - ); - - // BFS queue: (relative_path, page_url, depth) - // We process links from cached data, only fetching when needed - let mut queue: VecDeque<(String, Url, usize)> = VecDeque::new(); - let mut seen_pages: HashSet = HashSet::from([String::new()]); - let mut pages_fetched: usize = 1; // root already fetched - - // Seed queue with links from root page - for link in &root_links { - if is_largefile_link(link) { - continue; - } - if let Some((rel_path, abs_url)) = resolve_child_url(&root_url, &root_url, link) - && seen_pages.insert(rel_path.clone()) - { - queue.push_back((rel_path, abs_url, 1)); - } - } - - // BFS traversal with depth and page limits - while let Some((relative_path, page_url, depth)) = queue.pop_front() { - // Enforce depth limit - if depth > config.max_depth { - debug!( - "Skipping {} - exceeds max depth {}", - relative_path, config.max_depth - ); - continue; - } - - // Enforce page limit - if pages_fetched >= config.max_pages { - debug!( - "Reached max pages limit {}, stopping crawl", - config.max_pages - ); - break; - } - - // Fetch with conditional GET if we have cached data - let cached = cache.get(&relative_path); - let fetch_result = fetch_page_conditional(client, &page_url, cached).await; - - let links = match fetch_result { - FetchResult::Fetched { - html, - etag, - last_modified, - } => { - pages_fetched += 1; - let links = parse_pypi_index(&html); - cache.insert( - relative_path.clone(), - CachedPage { - etag, - last_modified, - links: links.clone(), - }, - ); - links - } - FetchResult::NotModified => { - // Use cached links, no need to re-parse - if let Some(cached) = cache.get(&relative_path) { - cached.links.clone() - } else { - continue; - } - } - FetchResult::Error(e) => { - warn!("Failed to fetch {}: {:?}", relative_path, e); - continue; - } - }; - - // Queue child links if we haven't reached max depth - if depth < config.max_depth { - for link in &links { - if is_largefile_link(link) { - continue; - } - if let Some((rel_path, abs_url)) = resolve_child_url(&root_url, &page_url, link) - && seen_pages.insert(rel_path.clone()) - { - queue.push_back((rel_path, abs_url, depth + 1)); - } - } - } - } - - debug!( - "Index crawl complete: {} pages fetched, {} pages cached", - pages_fetched, - cache.pages.len() - ); - - Ok(cache.valid_pages()) -} - -// pytorch-wheels - -pub struct PypiIndexState { - pub entries: RwLock>, // Sorted list of relative paths to index pages. - worker_started: AtomicBool, // One-time flag for background worker spawning. -} - -impl Default for PypiIndexState { - fn default() -> Self { - Self { - entries: RwLock::new(Vec::new()), - worker_started: AtomicBool::new(false), - } - } -} - -fn normalize_pypi_index(mut index: Vec) -> Vec { - index.retain(|entry| !entry.is_empty()); - index.sort(); - index.dedup(); - index -} - -fn apply_pypi_index_update(index: Vec, index_state: &'static PypiIndexState) { - // Replace in-memory index with the latest upstream snapshot. - let mut entries = index_state - .entries - .write() - .expect("PyPI index lock poisoned"); - - if *entries == index { - return; - } - - *entries = index; -} - -pub fn schedule_wheels_index_worker(config: &Config, index_state: &'static PypiIndexState) { - if index_state - .worker_started - .compare_exchange(false, true, Ordering::AcqRel, Ordering::Acquire) - .is_err() - { - return; - } - - let endpoint = config.endpoints.pytorch_wheels.clone(); - let pypi_config = config.pypi_index.clone(); - let timeout_secs = config.download_timeout.min(pypi_config.fetch_timeout_secs); - let client = match reqwest::ClientBuilder::new() - .user_agent(&config.user_agent) - .timeout(Duration::from_secs(timeout_secs)) - .build() - { - Ok(client) => client, - Err(err) => { - warn!("Failed to create PyPI index client: {:?}", err); - index_state.worker_started.store(false, Ordering::Release); - return; - } - }; - - tokio::spawn(async move { - let mut refresh = tokio::time::interval(Duration::from_secs(pypi_config.refresh_secs)); - refresh.set_missed_tick_behavior(MissedTickBehavior::Skip); - - // Persistent cache for conditional requests across refresh cycles - let mut cache = PypiIndexCache::new(); - - loop { - refresh.tick().await; - match fetch_pypi_index_cached(&client, &endpoint, &mut cache, &pypi_config).await { - Ok(index) => { - let normalized = normalize_pypi_index(index); - apply_pypi_index_update(normalized, index_state); - } - Err(err) => { - warn!("Failed to fetch PyPI index for pytorch-wheels: {:?}", err); - } - } - } - }); -} - -#[cfg(test)] -mod tests { - use super::*; - use std::collections::HashSet; - use std::sync::LazyLock; - - #[test] - fn test_resolve_child_url() { - let root = Url::parse("https://download.pytorch.org/whl").unwrap(); - let parent = Url::parse("https://download.pytorch.org/whl/torch/").unwrap(); - let link = "../cu130/torch/"; - let Some((relative, child)) = resolve_child_url(&root, &parent, link) else { - panic!("Failed to resolve child URL"); - }; - assert_eq!(relative, "cu130/torch"); - assert_eq!( - child.as_str(), - "https://download.pytorch.org/whl/cu130/torch/" - ); - } - - #[test] - fn test_resolve_child_url_parent_without_trailing_slash() { - let root = Url::parse("https://download.pytorch.org/whl").unwrap(); - let parent = Url::parse("https://download.pytorch.org/whl/torch").unwrap(); - let link = "../cu130/torch/"; - let Some((relative, child)) = resolve_child_url(&root, &parent, link) else { - panic!("Failed to resolve child URL"); - }; - assert_eq!(relative, "cu130/torch"); - assert_eq!( - child.as_str(), - "https://download.pytorch.org/whl/cu130/torch/" - ); - } - - #[test] - fn test_resolve_child_url_parent_with_trailing_slash() { - let root = Url::parse("https://download.pytorch.org/whl").unwrap(); - let parent = Url::parse("https://download.pytorch.org/whl/torch/").unwrap(); - let link = "../cu130/torch/"; - let Some((relative, child)) = resolve_child_url(&root, &parent, link) else { - panic!("Failed to resolve child URL"); - }; - assert_eq!(relative, "cu130/torch"); - assert_eq!( - child.as_str(), - "https://download.pytorch.org/whl/cu130/torch/" - ); - } - - #[test] - fn test_resolve_child_url_reject_root_link() { - let root = Url::parse("https://download.pytorch.org/whl").unwrap(); - let parent = Url::parse("https://download.pytorch.org/whl").unwrap(); - let link = "./"; - let resolved = resolve_child_url(&root, &parent, link); - assert!(resolved.is_none()); - } - - #[test] - fn test_resolve_child_url_reject_cross_origin() { - let root = Url::parse("https://download.pytorch.org/whl").unwrap(); - let parent = Url::parse("https://download.pytorch.org/whl").unwrap(); - let link = "https://example.com/torch/"; - let resolved = resolve_child_url(&root, &parent, link); - assert!(resolved.is_none()); - } - - static ROOT_FIXTURE: LazyLock = LazyLock::new(|| { - r#" - - - - torch
- cu130
- - - "# - .to_string() - }); - - static CU130_FIXTURE: LazyLock = LazyLock::new(|| { - r#" - - - - torch
- - - "# - .to_string() - }); - - #[test] - fn test_parse_pypi_index() { - const WHL: &str = include_str!("../tests/pytorch_wheels/whl.html"); - let links = parse_pypi_index(WHL); - println!("{:?}", links); - - let expected: HashSet<&str> = [ - "torch/", - "torchaudio/", - "torchvision/", - "triton/", - "cu130/", - "rocm7.2/", - ] - .into_iter() - .collect(); - - let actual: HashSet<&str> = links.iter().map(|link| link.as_str()).collect(); - - assert!(expected.is_subset(&actual)); - } - - #[tokio::test] - async fn test_fetch_pypi_index() { - use httpmock::Method::GET; - use httpmock::MockServer; - - const WHL_TORCH: &str = include_str!("../tests/pytorch_wheels/whl_torch.html"); - const WHL_CU130_TORCH: &str = include_str!("../tests/pytorch_wheels/whl_cu130_torch.html"); - - let server = MockServer::start_async().await; - let root = server - .mock_async(|when, then| { - when.method(GET).path("/whl"); - then.status(200).body(ROOT_FIXTURE.as_str()); - }) - .await; - let torch = server - .mock_async(|when, then| { - when.method(GET).path("/whl/torch/"); - then.status(200).body(WHL_TORCH); - }) - .await; - let cu130 = server - .mock_async(|when, then| { - when.method(GET).path("/whl/cu130/"); - then.status(200).body(CU130_FIXTURE.as_str()); - }) - .await; - let cu130_torch = server - .mock_async(|when, then| { - when.method(GET).path("/whl/cu130/torch/"); - then.status(200).body(WHL_CU130_TORCH); - }) - .await; - - let client = Client::new(); - let index_pages = fetch_pypi_index_cached( - &client, - &(server.base_url() + "/whl"), - &mut PypiIndexCache::new(), - &PypiIndexConfig::default(), - ) - .await - .unwrap(); - - let expected: HashSet<&str> = ["torch", "cu130", "cu130/torch"].into_iter().collect(); - let actual: HashSet<&str> = index_pages.iter().map(|s| s.as_str()).collect(); - - assert_eq!(expected, actual); - - root.assert_calls_async(1).await; - torch.assert_calls_async(1).await; - cu130.assert_calls_async(1).await; - cu130_torch.assert_calls_async(1).await; - } - - #[test] - fn test_apply_pypi_index_update_replaces_entries() { - let index_state: &'static PypiIndexState = Box::leak(Box::new(PypiIndexState::default())); - - apply_pypi_index_update(vec!["cu130".to_string(), "torch".to_string()], index_state); - apply_pypi_index_update(vec!["torch".to_string()], index_state); - - let entries = index_state - .entries - .read() - .expect("PyPI index lock poisoned"); - assert_eq!(entries.as_slice(), ["torch"]); - } - - #[tokio::test] - async fn test_fetch_pypi_index_cached_respects_depth_limit() { - use httpmock::Method::GET; - use httpmock::MockServer; - - // depth 3 content that should NOT be fetched with max_depth=2 - const DEEP_PAGE: &str = - r#"deep.whl"#; - - let server = MockServer::start_async().await; - server - .mock_async(|when, then| { - when.method(GET).path("/whl"); - then.status(200).body(ROOT_FIXTURE.as_str()); - }) - .await; - server - .mock_async(|when, then| { - when.method(GET).path("/whl/torch/"); - then.status(200).body( - r#"file"#, - ); - }) - .await; - server - .mock_async(|when, then| { - when.method(GET).path("/whl/cu130/"); - then.status(200).body(CU130_FIXTURE.as_str()); - }) - .await; - server - .mock_async(|when, then| { - when.method(GET).path("/whl/cu130/torch/"); - // Has a subdir link - then.status(200).body( - r#"subdir"#, - ); - }) - .await; - let deep_mock = server - .mock_async(|when, then| { - // This is depth 3 - should NOT be fetched with max_depth=2 - when.method(GET).path("/whl/cu130/torch/subdir/"); - then.status(200).body(DEEP_PAGE); - }) - .await; - - let client = Client::new(); - let mut cache = PypiIndexCache::new(); - let config = PypiIndexConfig { - max_depth: 2, - max_pages: 1000, - ..Default::default() - }; - - let _pages = - fetch_pypi_index_cached(&client, &(server.base_url() + "/whl"), &mut cache, &config) - .await - .unwrap(); - - // Verify the deep page was NOT fetched - deep_mock.assert_calls_async(0).await; - } - - #[tokio::test] - async fn test_fetch_pypi_index_cached_conditional_request() { - use httpmock::Method::GET; - use httpmock::MockServer; - - let server = MockServer::start_async().await; - - // First request returns content with ETag - let root_mock = server - .mock_async(|when, then| { - when.method(GET).path("/whl"); - then.status(200) - .header("ETag", "\"abc123\"") - .body(r#"pkg"#); - }) - .await; - - let pkg_mock = server - .mock_async(|when, then| { - when.method(GET).path("/whl/pkg/"); - then.status(200).header("ETag", "\"pkg456\"").body( - r#"file"#, - ); - }) - .await; - - let client = Client::new(); - let mut cache = PypiIndexCache::new(); - let config = PypiIndexConfig::default(); - - // First fetch - populates cache - let pages = - fetch_pypi_index_cached(&client, &(server.base_url() + "/whl"), &mut cache, &config) - .await - .unwrap(); - - assert_eq!(pages, vec!["pkg"]); - root_mock.assert_calls_async(1).await; - pkg_mock.assert_calls_async(1).await; - - // Verify cache has ETag stored - let cached_pkg = cache.get("pkg").unwrap(); - assert_eq!(cached_pkg.etag, Some("\"pkg456\"".to_string())); - } - - #[tokio::test] - async fn test_fetch_pypi_index_cached_304_not_modified() { - use httpmock::Method::GET; - use httpmock::MockServer; - - let server = MockServer::start_async().await; - - // Create mocks that return 304 for conditional requests - server - .mock_async(|when, then| { - when.method(GET).path("/whl"); - then.status(200) - .header("ETag", "\"root-etag\"") - .body(r#"pkg"#); - }) - .await; - - // For pkg/, first return 200, then check for conditional header - let pkg_initial = server - .mock_async(|when, then| { - when.method(GET) - .path("/whl/pkg/") - .header_missing("If-None-Match"); - then.status(200).header("ETag", "\"pkg-etag\"").body( - r#"file"#, - ); - }) - .await; - - let pkg_conditional = server - .mock_async(|when, then| { - when.method(GET) - .path("/whl/pkg/") - .header("If-None-Match", "\"pkg-etag\""); - then.status(304); // Not Modified - }) - .await; - - let client = Client::new(); - let mut cache = PypiIndexCache::new(); - let config = PypiIndexConfig::default(); - - // First fetch - fetch_pypi_index_cached(&client, &(server.base_url() + "/whl"), &mut cache, &config) - .await - .unwrap(); - - pkg_initial.assert_calls_async(1).await; - pkg_conditional.assert_calls_async(0).await; - - // Second fetch - should use conditional request - let pages = - fetch_pypi_index_cached(&client, &(server.base_url() + "/whl"), &mut cache, &config) - .await - .unwrap(); - - assert_eq!(pages, vec!["pkg"]); - pkg_conditional.assert_calls_async(1).await; - } - - #[tokio::test] - async fn test_fetch_pypi_index_cached_root_http_error() { - use httpmock::Method::GET; - use httpmock::MockServer; - - let server = MockServer::start_async().await; - let root_mock = server - .mock_async(|when, then| { - when.method(GET).path("/whl"); - then.status(404) - .header("Content-Type", "text/html") - .body("not found"); - }) - .await; - - let client = Client::new(); - let mut cache = PypiIndexCache::new(); - let config = PypiIndexConfig::default(); - - let result = - fetch_pypi_index_cached(&client, &(server.base_url() + "/whl"), &mut cache, &config) - .await; - - assert!( - matches!(result, Err(Error::HTTPError(status)) if status == reqwest::StatusCode::NOT_FOUND) - ); - assert!(cache.get("").is_none()); - root_mock.assert_calls_async(1).await; - } - - #[test] - fn test_pypi_index_cache_valid_pages() { - let mut cache = PypiIndexCache::new(); - - // Empty path should not be included - cache.insert( - String::new(), - CachedPage { - etag: None, - last_modified: None, - links: vec!["something".to_string()], - }, - ); - - // Path with links should be included - cache.insert( - "torch".to_string(), - CachedPage { - etag: Some("etag".to_string()), - last_modified: None, - links: vec!["file.whl".to_string()], - }, - ); - - // Path with no links should not be included - cache.insert( - "empty".to_string(), - CachedPage { - etag: None, - last_modified: None, - links: vec![], - }, - ); - - let valid = cache.valid_pages(); - assert_eq!(valid, vec!["torch"]); - } -} diff --git a/src/repos.rs b/src/repos.rs index 2e29fc6..af59589 100644 --- a/src/repos.rs +++ b/src/repos.rs @@ -6,18 +6,26 @@ use regex::Regex; use crate::error::Result; use crate::intel_path::IntelPath; -use crate::pypi_index::{PypiIndexState, schedule_wheels_index_worker}; use crate::{ Error, common::{Config, Endpoints, IntelMission, IntelResponse, Redirect, Task}, utils, }; +/// Routing decision returned by a `classify` closure in [`simple_intel`]. +pub enum RouteAction { + /// Reverse-proxy the request to upstream. + Proxy, + /// Follow the smart-cache strategy (redirect HEAD, stream or cache GET). + Cache, + /// Permanently redirect (301) to the upstream URL. + Redirect, +} + pub fn simple_intel( origin_injection: impl FnMut(&Endpoints) -> &str + Clone + Send + Sync + 'static, route: &'static str, - filter: impl FnMut(&Config, &str) -> bool + Clone + Send + 'static, - proxy: impl FnMut(&Config, &str) -> bool + Clone + Send + 'static, + classify: impl FnMut(&Config, &str) -> RouteAction + Clone + Send + 'static, ) -> Route { let handler = move |path: IntelPath, method: Method, @@ -25,8 +33,7 @@ pub fn simple_intel( intel_mission: web::Data, config: web::Data| { let mut origin_injection = origin_injection.clone(); - let mut filter = filter.clone(); - let mut proxy = proxy.clone(); + let mut classify = classify.clone(); async move { let origin = origin_injection(&config.endpoints).to_string(); let path = path.to_string(); @@ -45,38 +52,40 @@ pub fn simple_intel( ); } - // Proxy if the path is proxied. - if proxy(&config, &task.path) { - let resp = if method == Method::HEAD { - HttpResponse::Ok().finish().into() - } else { - task.resolve_upstream() - .reverse_proxy(&intel_mission) - .await? - .into() - }; - return Ok(resp); + match classify(&config, &task.path) { + RouteAction::Proxy => { + let resp = if method == Method::HEAD { + HttpResponse::Ok().finish().into() + } else { + task.resolve_upstream() + .reverse_proxy(&intel_mission) + .await? + .into() + }; + Ok(resp) + } + RouteAction::Cache => { + let resp = if method == Method::HEAD { + task.resolve_no_content(&intel_mission, &config) + .await? + .redirect(&config) + .into() + } else { + task.resolve(&intel_mission, &config) + .await? + .stream_small_cached( + config.direct_stream_size_kb, + &intel_mission, + &config, + ) + .await? + }; + Ok(resp) + } + RouteAction::Redirect => { + Ok(Redirect::Permanent(task.upstream_url().to_string()).into()) + } } - - // Redirect (308) to upstream if the path is filtered out. - // NOTE: use 301 instead of 308 - if !filter(&config, &task.path) { - return Ok(Redirect::Permanent(task.upstream_url().to_string()).into()); - } - - // Otherwise, follow smart cache strategy. - let resp = if method == Method::HEAD { - task.resolve_no_content(&intel_mission, &config) - .await? - .redirect(&config) - .into() - } else { - task.resolve(&intel_mission, &config) - .await? - .stream_small_cached(config.direct_stream_size_kb, &intel_mission, &config) - .await? - }; - Ok(resp) } }; // Route with handler for GET and HEAD, otherwise 404 @@ -85,12 +94,60 @@ pub fn simple_intel( .to(handler) } -pub const fn disallow_all(_config: &Config, _path: &str) -> bool { - false +/// Classify every path as [`RouteAction::Cache`]. +/// +/// Use as the `classify` argument for routes where all requests follow the +/// smart-cache strategy. +pub fn classify_cache_all(_config: &Config, _path: &str) -> RouteAction { + RouteAction::Cache } -pub const fn allow_all(_config: &Config, _path: &str) -> bool { - true +/// Convert a boolean filter into a `classify` closure. +/// +/// Paths that pass the filter get [`RouteAction::Cache`]; +/// all others get [`RouteAction::Redirect`]. +pub fn classify_with( + mut filter: impl FnMut(&Config, &str) -> bool + Clone + Send + 'static, +) -> impl FnMut(&Config, &str) -> RouteAction + Clone + Send + 'static { + move |config: &Config, path: &str| { + if filter(config, path) { + RouteAction::Cache + } else { + RouteAction::Redirect + } + } +} + +/// Classify paths for the pytorch-wheels route. +/// +/// * `.html` files → [`RouteAction::Proxy`] (reverse-proxy upstream for freshness) +/// * `.whl` files and `#sha256=` fragment links → [`RouteAction::Cache`] +/// * source archives (`.tar.gz`, `.zip`, `.exe`) → [`RouteAction::Redirect`] +/// * everything else → [`RouteAction::Cache`] +/// +/// Directory index pages and unknown paths all use the smart-cache strategy: +/// HEAD requests are redirected to upstream (cheap revalidation), while GET +/// requests are resolved through `stream_small_cached` (small HTML listings get +/// cached, large wheel files are streamed through). +pub fn wheels_route_classify(_config: &Config, path: &str) -> RouteAction { + if path.ends_with(".html") { + return RouteAction::Proxy; + } + + // Source archives and Windows installers — redirect to upstream. + if path.ends_with(".tar.gz") || path.ends_with(".zip") || path.ends_with(".exe") { + return RouteAction::Redirect; + } + + if let Some((wheel_path, sha256)) = path.split_once("#sha256=") + && wheel_path.ends_with(".whl") + && sha256.len() == 64 + && sha256.chars().all(|c| c.is_ascii_hexdigit()) + { + return RouteAction::Cache; + } + + RouteAction::Cache } pub fn ostree_allow(_config: &Config, path: &str) -> bool { @@ -111,16 +168,6 @@ pub fn rust_static_allow(_config: &Config, path: &str) -> bool { true } -pub fn wheels_allow(_config: &Config, path: &str) -> bool { - if let Some((wheel_path, sha256)) = path.split_once("#sha256=") { - return wheel_path.ends_with(".whl") - && sha256.len() == 64 - && sha256.chars().all(|c| c.is_ascii_hexdigit()); - } - - path.ends_with(".whl") || path.ends_with(".html") -} - pub fn github_release_allow(config: &Config, path: &str) -> bool { static REGEX: LazyLock = LazyLock::new(|| Regex::new("^[^/]+/[^/]+/releases/download/[^/]+/[^/]+$").unwrap()); @@ -180,30 +227,6 @@ pub fn linuxbrew_allow(_config: &Config, path: &str) -> bool { path.contains(".x86_64_linux") } -static PYTORCH_WHEELS_INDEX_STATE: LazyLock = - LazyLock::new(PypiIndexState::default); - -pub fn wheels_proxy(config: &Config, path: &str) -> bool { - if path.ends_with(".html") { - return true; - } - - schedule_wheels_index_worker(config, &PYTORCH_WHEELS_INDEX_STATE); - - let normalized_path = path.trim_end_matches('/'); - let index = PYTORCH_WHEELS_INDEX_STATE - .entries - .read() - .expect("wheels index lock poisoned"); - index - .iter() - .any(|entry| normalized_path.ends_with(entry.trim_end_matches('/'))) -} - -// pub fn wheels_proxy(path: &str) -> bool { -// path.ends_with(".html") -// } - pub fn gradle_allow(_config: &Config, path: &str) -> bool { path.ends_with(".zip") } @@ -212,41 +235,34 @@ pub fn configure_repo_routes(config: &mut web::ServiceConfig) { config .route( "/crates.io/{path:.+}", - simple_intel(|c| &c.crates_io, "crates.io", allow_all, disallow_all), + simple_intel(|c| &c.crates_io, "crates.io", classify_cache_all), ) .route( "/flathub/{path:.+}", - simple_intel(|c| &c.flathub, "flathub", ostree_allow, disallow_all), + simple_intel(|c| &c.flathub, "flathub", classify_with(ostree_allow)), ) .route( "/fedora-ostree/{path:.+}", simple_intel( |c| &c.fedora_ostree, "fedora-ostree", - ostree_allow, - disallow_all, + classify_with(ostree_allow), ), ) .route( "/fedora-iot/{path:.+}", - simple_intel(|c| &c.fedora_iot, "fedora-iot", ostree_allow, disallow_all), + simple_intel(|c| &c.fedora_iot, "fedora-iot", classify_with(ostree_allow)), ) .route( "/pypi-packages/{path:.+}", - simple_intel( - |c| &c.pypi_packages, - "pypi-packages", - allow_all, - disallow_all, - ), + simple_intel(|c| &c.pypi_packages, "pypi-packages", classify_cache_all), ) .route( "/homebrew-bottles/{path:.+}", simple_intel( |c| &c.homebrew_bottles, "homebrew-bottles", - allow_all, - disallow_all, + classify_cache_all, ), ) .route( @@ -254,8 +270,7 @@ pub fn configure_repo_routes(config: &mut web::ServiceConfig) { simple_intel( |c| &c.linuxbrew_bottles, "linuxbrew-bottles", - linuxbrew_allow, - disallow_all, + classify_with(linuxbrew_allow), ), ) .route( @@ -263,8 +278,7 @@ pub fn configure_repo_routes(config: &mut web::ServiceConfig) { simple_intel( |c| &c.rust_static, "rust-static", - rust_static_allow, - disallow_all, + classify_with(rust_static_allow), ), ) .route( @@ -272,8 +286,7 @@ pub fn configure_repo_routes(config: &mut web::ServiceConfig) { simple_intel( |c| &c.pytorch_wheels, "pytorch-wheels", - wheels_allow, - wheels_proxy, + wheels_route_classify, ), ) .route( @@ -281,8 +294,7 @@ pub fn configure_repo_routes(config: &mut web::ServiceConfig) { simple_intel( |c| &c.sjtug_internal, "sjtug-internal", - sjtug_internal_allow, - disallow_all, + classify_with(sjtug_internal_allow), ), ) .route( @@ -290,8 +302,7 @@ pub fn configure_repo_routes(config: &mut web::ServiceConfig) { simple_intel( |c| &c.flutter_infra, "flutter_infra", - flutter_allow, - disallow_all, + classify_with(flutter_allow), ), ) .route( @@ -299,8 +310,7 @@ pub fn configure_repo_routes(config: &mut web::ServiceConfig) { simple_intel( |c| &c.flutter_infra_release, "flutter_infra_release", - flutter_allow, - disallow_all, + classify_with(flutter_allow), ), ) .route( @@ -308,21 +318,19 @@ pub fn configure_repo_routes(config: &mut web::ServiceConfig) { simple_intel( |c| &c.github_release, "github-release", - github_release_allow, - disallow_all, + classify_with(github_release_allow), ), ) .route( "/opam-cache/{path:.+}", - simple_intel(|c| &c.opam_cache, "opam-cache", allow_all, disallow_all), + simple_intel(|c| &c.opam_cache, "opam-cache", classify_cache_all), ) .route( "/gradle/distribution/{path:.+}", simple_intel( |c| &c.gradle_distribution, "gradle/distributions", - gradle_allow, - disallow_all, + classify_with(gradle_allow), ), ) .route("/dart-pub/{path:.+}", web::get().to(dart_pub)) @@ -566,8 +574,7 @@ mod tests { simple_intel( |c| &c.pytorch_wheels, "pytorch-wheels", - wheels_allow, - wheels_proxy, + wheels_route_classify, ), ) .route( @@ -575,8 +582,7 @@ mod tests { simple_intel( |c| &c.sjtug_internal, "sjtug-internal", - sjtug_internal_allow, - disallow_all, + classify_with(sjtug_internal_allow), ), ) .route("/{path:.+}", web::get().to(index)) @@ -772,24 +778,62 @@ mod tests { } #[test] - fn test_wheels_allow() { + fn test_wheels_route_classify() { let config = Config::default(); - assert!(wheels_allow(&config, "torch_stable.html")); - assert!(wheels_allow( - &config, - "torch-2.0.0-cp311-cp311-manylinux.whl" + // .html files are proxied + assert!(matches!( + wheels_route_classify(&config, "torch_stable.html"), + RouteAction::Proxy )); - assert!(!wheels_allow( - &config, - "torch-2.0.0-cp311-cp311-manylinux.whl#sha256=0123456789abcdef", + // .whl files are cached + assert!(matches!( + wheels_route_classify(&config, "torch-2.0.0-cp311-cp311-manylinux.whl"), + RouteAction::Cache )); - assert!(wheels_allow( - &config, - "cpu/torch-2.11.0%2Bcpu-cp314-cp314t-manylinux_2_28_x86_64.whl", + // Invalid #sha256 fragment → Cache (smart cache handles unknown paths) + assert!(matches!( + wheels_route_classify( + &config, + "torch-2.0.0-cp311-cp311-manylinux.whl#sha256=0123456789abcdef" + ), + RouteAction::Cache )); - assert!(wheels_allow( - &config, - "cu130/torch-2.11.0%2Bcu130-cp314-cp314t-manylinux_2_28_x86_64.whl", + // Valid .whl with hash → cache + assert!(matches!( + wheels_route_classify( + &config, + "cpu/torch-2.11.0%2Bcpu-cp314-cp314t-manylinux_2_28_x86_64.whl" + ), + RouteAction::Cache + )); + assert!(matches!( + wheels_route_classify( + &config, + "cu130/torch-2.11.0%2Bcu130-cp314-cp314t-manylinux_2_28_x86_64.whl" + ), + RouteAction::Cache + )); + // Source archives and installers → redirect to upstream + assert!(matches!( + wheels_route_classify(&config, "torch-2.0.0.tar.gz"), + RouteAction::Redirect + )); + assert!(matches!( + wheels_route_classify(&config, "torch-2.0.0.zip"), + RouteAction::Redirect + )); + assert!(matches!( + wheels_route_classify(&config, "torch-2.0.0-cp311-cp311-win_amd64.exe"), + RouteAction::Redirect + )); + // Unknown paths (directory indexes, etc.) → Cache (smart cache strategy) + assert!(matches!( + wheels_route_classify(&config, "torch"), + RouteAction::Cache + )); + assert!(matches!( + wheels_route_classify(&config, "cu130/torch"), + RouteAction::Cache )); } @@ -828,35 +872,6 @@ mod tests { assert_eq!(resp.status(), StatusCode::OK); } - #[serial(cwd_env)] - #[tokio::test] - async fn test_proxy_head_wheels_index_path() { - // Ensure dynamic index entries are proxied before filter redirect. - { - let mut entries = PYTORCH_WHEELS_INDEX_STATE - .entries - .write() - .expect("wheels index lock poisoned"); - entries.clear(); - entries.push("torch/".to_string()); - } - - let (service, _, _rx, _server) = make_service().await; - let object = Task { - storage: "pytorch-wheels", - origin: "https://download.pytorch.org/whl".to_string(), - path: "torch".to_string(), - retry_limit: 3, - }; - - let req = TestRequest::default() - .method(Method::HEAD) - .uri(object.root_path().as_str()) - .to_request(); - let resp = call_service(&service, req).await; - assert_eq!(resp.status(), StatusCode::OK); - } - #[test] fn test_github_release() { let mut config = Config::default(); diff --git a/src/storage.rs b/src/storage.rs index 804e80d..cd97f90 100644 --- a/src/storage.rs +++ b/src/storage.rs @@ -2,7 +2,7 @@ use std::time::Duration; use aws_sdk_s3::Client as S3Client; -use aws_sdk_s3::config::Region; +use aws_sdk_s3::config::{Region, RequestChecksumCalculation}; use tokio::time::timeout; use crate::common::S3Config; @@ -19,7 +19,8 @@ fn get_s3_client(s3_config: &S3Config) -> S3Client { let s3_builder = aws_sdk_s3::Config::builder() .region(s3_region(s3_config)) .endpoint_url(s3_config.endpoint.clone()) - .force_path_style(true); + .force_path_style(true) + .request_checksum_calculation(RequestChecksumCalculation::WhenRequired); S3Client::from_conf(s3_builder.build()) } diff --git a/tests/config/Rocket.toml b/tests/config/Rocket.toml index e524027..99cf0e5 100644 --- a/tests/config/Rocket.toml +++ b/tests/config/Rocket.toml @@ -48,9 +48,3 @@ endpoint = "https://s3.jcloud.sjtu.edu.cn" website_endpoint = "https://s3.jcloud.sjtu.edu.cn" bucket = "899a892efef34b1b944a19981040f55b-oss01" sentinel_object_key = "sjtug-internal/mirror-intel/releases/download/v0.1.35/mirror-intel.tar.gz" - -[default.pypi_index] -refresh_secs = 300 -fetch_timeout_secs = 30 -max_depth = 2 -max_pages = 1000 diff --git a/tests/e2e/default.nix b/tests/e2e/default.nix index bd4c0c6..33f4423 100644 --- a/tests/e2e/default.nix +++ b/tests/e2e/default.nix @@ -1,4 +1,9 @@ { pkgs, my-crate }: +let + nixCacheFixture = pkgs.writeText "mirror-intel-e2e-nix-cache-fixture" '' + nix cache fixture + ''; +in { e2e-simple = pkgs.runCommand "e2e-tests" @@ -7,18 +12,57 @@ my-crate pkgs.coreutils pkgs.curl + pkgs.nix + pkgs.nix-serve-ng + pkgs.python3 pkgs.retry pkgs.cacert ]; + NIX_CACHE_FIXTURE = nixCacheFixture; ROCKET_TOML_PATH = "Rocket.toml"; } '' cp ${../config/Rocket.toml} Rocket.toml - cp Rocket.toml mirror-intel.toml + cat > mirror-intel.toml <""" + b"""cu130""" + b"""torch""" + b"""""" +) +UPSTREAM_CU130 = b"""torch""" +UPSTREAM_TORCH = ( + b"""torch cached directory index""" + b"""torch""" +) +UPSTREAM_CU130_TORCH = ( + b"""cu130 torch cached directory index""" + b"""torch""" +) + +objects = {"sentinel": b"0"} +objects_lock = threading.Lock() + + +class QuietHandler(BaseHTTPRequestHandler): + protocol_version = "HTTP/1.1" + + def log_message(self, _format, *_args): + return + + def send_bytes(self, status, body=b"", headers=None): + self.send_response(status) + for key, value in (headers or {}).items(): + self.send_header(key, value) + self.send_header("Content-Length", str(len(body))) + self.end_headers() + if self.command != "HEAD": + self.wfile.write(body) + + +class UpstreamHandler(QuietHandler): + def do_HEAD(self): + self.do_GET() + + def do_GET(self): + path = urlparse(self.path).path + if path == "/health": + self.send_bytes(200, b"ok") + elif path in ("/whl", "/whl/"): + self.send_bytes(200, UPSTREAM_ROOT, {"Content-Type": "text/html"}) + elif path in ("/whl/cu130", "/whl/cu130/"): + self.send_bytes(200, UPSTREAM_CU130, {"Content-Type": "text/html"}) + elif path in ("/whl/torch", "/whl/torch/"): + self.send_bytes(200, UPSTREAM_TORCH, {"Content-Type": "text/html"}) + elif path in ("/whl/cu130/torch", "/whl/cu130/torch/"): + self.send_bytes(200, UPSTREAM_CU130_TORCH, {"Content-Type": "text/html"}) + else: + self.send_bytes(404, b"not found") + + +class S3Handler(QuietHandler): + def do_HEAD(self): + self.send_object(head=True) + + def do_GET(self): + path = urlparse(self.path).path + if path == "/health": + self.send_bytes(200, b"ok") + return + + if path in ("/bucket", "/bucket/"): + self.send_bytes( + 200, + b'', + {"Content-Type": "application/xml"}, + ) + return + + self.send_object(head=False) + + def do_PUT(self): + path = urlparse(self.path).path + if not path.startswith("/bucket/"): + self.send_bytes(404, b"not found") + return + + key = unquote(path.removeprefix("/bucket/")) + body = self.read_request_body() + with objects_lock: + objects[key] = body + + self.send_bytes(200, b"", {"ETag": '"fake-etag"'}) + + def send_object(self, head): + path = urlparse(self.path).path + if not path.startswith("/bucket/"): + self.send_bytes(404, b"not found") + return + + key = unquote(path.removeprefix("/bucket/")) + with objects_lock: + body = objects.get(key) + + if body is None: + self.send_bytes(404, b"not found") + return + + headers = {"Content-Type": "text/html"} + if self.headers.get("Range") == "bytes=0-0" and body: + headers["Content-Range"] = f"bytes 0-0/{len(body)}" + self.send_bytes(206, body[:1], headers) + return + + self.send_bytes(200, b"" if head else body, headers) + + def read_request_body(self): + if self.headers.get("Transfer-Encoding", "").lower() == "chunked": + chunks = [] + while True: + size_line = self.rfile.readline().split(b";", 1)[0].strip() + size = int(size_line, 16) + if size == 0: + self.rfile.readline() + break + chunks.append(self.rfile.read(size)) + self.rfile.read(2) + return b"".join(chunks) + + length = int(self.headers.get("Content-Length", "0")) + return self.rfile.read(length) + + +def serve(port, handler): + server = ThreadingHTTPServer(("127.0.0.1", port), handler) + thread = threading.Thread(target=server.serve_forever, daemon=True) + thread.start() + return server + + +def main(): + upstream = serve(18080, UpstreamHandler) + s3 = serve(18081, S3Handler) + + def shutdown(_signum, _frame): + upstream.shutdown() + s3.shutdown() + sys.exit(0) + + signal.signal(signal.SIGTERM, shutdown) + signal.signal(signal.SIGINT, shutdown) + print("fake services ready", flush=True) + signal.pause() + + +if __name__ == "__main__": + main() diff --git a/tests/e2e/simple.sh b/tests/e2e/simple.sh index c81c4aa..d855256 100644 --- a/tests/e2e/simple.sh +++ b/tests/e2e/simple.sh @@ -1,4 +1,5 @@ #!/usr/bin/env bash +set -euo pipefail wait-for-connection() { local url="$1" @@ -25,6 +26,35 @@ assert-status() { test "$status" = "$expected_status" } +wait-for-status() { + local method="$1" + local url="$2" + local expected_status="$3" + local status + local deadline + + deadline=$((SECONDS + 20)) + while true; do + status="$( + curl \ + --silent --show-error \ + --request "$method" \ + --output /dev/null \ + --write-out '%{http_code}' \ + "$url" || true + )" + + if test "$status" = "$expected_status"; then + return 0 + fi + if test "$SECONDS" -ge "$deadline"; then + echo "expected $method $url to return $expected_status, got $status" >&2 + return 1 + fi + sleep 1 + done +} + assert-body-contains() { local url="$1" local expected_content="$2" @@ -32,6 +62,24 @@ assert-body-contains() { curl --silent --show-error "$url" | grep --fixed-strings --quiet -- "$expected_content" } +wait-for-body-contains() { + local url="$1" + local expected_content="$2" + local deadline + + deadline=$((SECONDS + 20)) + while true; do + if curl --silent --show-error "$url" | grep --fixed-strings --quiet -- "$expected_content"; then + return 0 + fi + if test "$SECONDS" -ge "$deadline"; then + echo "expected $url body to contain $expected_content" >&2 + return 1 + fi + sleep 1 + done +} + assert-location() { local url="$1" local expected_location="$2" @@ -49,23 +97,78 @@ assert-location() { } cleanup() { - if kill -0 "$mirror_intel_pid" 2>/dev/null; then + if test -n "${mirror_intel_pid:-}" && kill -0 "$mirror_intel_pid" 2>/dev/null; then kill "$mirror_intel_pid" + wait "$mirror_intel_pid" 2>/dev/null || true + fi + if test -n "${fake_services_pid:-}" && kill -0 "$fake_services_pid" 2>/dev/null; then + kill "$fake_services_pid" + wait "$fake_services_pid" 2>/dev/null || true + fi + if test -n "${nix_serve_pid:-}" && kill -0 "$nix_serve_pid" 2>/dev/null; then + kill "$nix_serve_pid" + wait "$nix_serve_pid" 2>/dev/null || true fi - wait "$mirror_intel_pid" 2>/dev/null || true } base_url="http://localhost:8000" +upstream_url="http://127.0.0.1:18080" +nix_store_url="http://127.0.0.1:18082" +s3_url="http://127.0.0.1:18081" rocket_toml_path="${ROCKET_TOML_PATH:-Rocket.toml}" +script_dir="$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)" +mirror_intel_pid="" +fake_services_pid="" +nix_serve_pid="" test -r "$rocket_toml_path" +test -e "$NIX_CACHE_FIXTURE" +mkdir -p buffer +nix_store_nar="$PWD/nix-cache-fixture.nar" +nix_store_db_dump="$PWD/nix-store-db.dump" +nix-store --dump "$NIX_CACHE_FIXTURE" > "$nix_store_nar" +nix_store_nar_hash="$(sha256sum "$nix_store_nar" | cut --delimiter ' ' --fields 1)" +nix_store_nar_size="$(wc --bytes < "$nix_store_nar" | tr --delete '[:space:]')" +printf '%s\n%s\n%s\n\n0\n' \ + "$NIX_CACHE_FIXTURE" \ + "$nix_store_nar_hash" \ + "$nix_store_nar_size" > "$nix_store_db_dump" + +export NIX_STATE_DIR="$PWD/nix-state" +export NIX_LOG_DIR="$PWD/nix-log" +export NIX_CONF_DIR="$PWD/nix-conf" +mkdir -p "$NIX_STATE_DIR/profiles" "$NIX_STATE_DIR/gcroots" "$NIX_LOG_DIR" "$NIX_CONF_DIR" +nix-store --load-db < "$nix_store_db_dump" + +python3 "$script_dir/fake_services.py" & +fake_services_pid="$!" +trap cleanup EXIT + +nix-serve --host 127.0.0.1 --port 18082 --quiet & +nix_serve_pid="$!" + +wait-for-connection "$upstream_url/health" +wait-for-connection "$nix_store_url/nix-cache-info" +wait-for-connection "$s3_url/health" + +nix_cache_basename="$(basename -- "$NIX_CACHE_FIXTURE")" +nix_cache_narinfo="${nix_cache_basename%%-*}.narinfo" +nix_cache_nar_path="$( + curl --silent --show-error --fail "$nix_store_url/$nix_cache_narinfo" | + sed --quiet --expression 's/^URL: //p' | + head --lines 1 +)" +test -n "$nix_cache_nar_path" + +export AWS_ACCESS_KEY_ID=fake +export AWS_SECRET_ACCESS_KEY=fake +export AWS_EC2_METADATA_DISABLED=true RUST_LOG_FORMAT=plain \ RUST_LOG=info \ ROCKET_TOML_PATH="$rocket_toml_path" \ mirror-intel & mirror_intel_pid="$!" -trap cleanup EXIT wait-for-connection "$base_url/metrics" @@ -75,13 +178,46 @@ assert-body-contains "$base_url/metrics" "resolve_counter" assert-status GET "$base_url/pytorch-wheels/" 200 assert-body-contains "$base_url/pytorch-wheels/" "No route for pytorch-wheels." -assert-status HEAD "$base_url/pytorch-wheels/torch/" 200 -assert-body-contains "$base_url/pytorch-wheels/torch/" "cu130" - assert-status GET "$base_url/pytorch-wheels/torch/?mirror_intel_e2e=1" 302 assert-location \ "$base_url/pytorch-wheels/torch/?mirror_intel_e2e=1" \ - "https://download.pytorch.org/whl/torch?mirror_intel_e2e=1" + "$upstream_url/whl/torch?mirror_intel_e2e=1" + +assert-status GET "$base_url/pytorch-wheels/cu130/torch/?mirror_intel_e2e=1" 302 +assert-location \ + "$base_url/pytorch-wheels/cu130/torch/?mirror_intel_e2e=1" \ + "$upstream_url/whl/cu130/torch?mirror_intel_e2e=1" + +wait-for-status GET "$base_url/pytorch-wheels/cu130/torch/" 302 +wait-for-body-contains "$base_url/pytorch-wheels/cu130/torch/" "cu130 torch cached directory index" + +assert-status GET "$base_url/pytorch-wheels/cu130/torch/" 200 +assert-body-contains "$base_url/pytorch-wheels/cu130/torch/" "cu130 torch cached directory index" +assert-body-contains "$s3_url/bucket/pytorch-wheels/cu130/torch" "cu130 torch cached directory index" +assert-status HEAD "$base_url/pytorch-wheels/cu130/torch/" 301 + +assert-status GET "$base_url/nix-channels/store/nix-cache-info" 200 +assert-body-contains "$base_url/nix-channels/store/nix-cache-info" "StoreDir: /nix/store" + +assert-status GET "$base_url/nix-channels/store/$nix_cache_narinfo?mirror_intel_e2e=1" 302 +assert-location \ + "$base_url/nix-channels/store/$nix_cache_narinfo?mirror_intel_e2e=1" \ + "$nix_store_url/$nix_cache_narinfo?mirror_intel_e2e=1" + +assert-status GET "$base_url/nix-channels/store/$nix_cache_narinfo" 200 +assert-body-contains \ + "$base_url/nix-channels/store/$nix_cache_narinfo" \ + "StorePath: $NIX_CACHE_FIXTURE" +wait-for-body-contains \ + "$s3_url/bucket/nix-channels/store/$nix_cache_narinfo" \ + "StorePath: $NIX_CACHE_FIXTURE" +assert-body-contains \ + "$base_url/nix-channels/store/$nix_cache_narinfo" \ + "StorePath: $NIX_CACHE_FIXTURE" + +assert-status GET "$base_url/nix-channels/store/$nix_cache_nar_path" 200 +wait-for-status GET "$s3_url/bucket/nix-channels/store/$nix_cache_nar_path" 200 +assert-status GET "$base_url/nix-channels/store/$nix_cache_nar_path" 200 # shellcheck disable=SC2154 touch "$out" diff --git a/tests/pytorch_wheels/whl.html b/tests/pytorch_wheels/whl.html deleted file mode 100644 index 6a2f89f..0000000 --- a/tests/pytorch_wheels/whl.html +++ /dev/null @@ -1,197 +0,0 @@ - - - - certifi
- charset-normalizer
- cmake
- colorama
- cpu
- cpu-cxx11-abi
- cpu-pypi-pkg
- cu100
- cu101
- cu102
- cu110
- cu111
- cu113
- cu115
- cu116
- cu117
- cu117-pypi-cudnn
- cu118
- cu121
- cu121-full
- cu121-pypi-cudnn
- cu124
- cu124-full
- cu126
- cu126-full
- cu128
- cu128-full
- cu129
- cu130
- cu75
- cu80
- cu90
- cu91
- cu92
- cuda-bindings
- cuda-pathfinder
- cuda-python
- dpcpp-cpp-rt
- executorch
- fbgemm-gpu
- fbgemm-gpu-genai
- filelock
- flash-attn-3
- flashinfer-python
- fsspec
- idna
- impi-rt
- importlib-metadata
- intel-cmplr-lib-rt
- intel-cmplr-lib-ur
- intel-cmplr-lic-rt
- intel-opencl-rt
- intel-openmp
- intel-pti
- intel-sycl-rt
- iopath
- jinja2
- lightning-utilities
- lit
- markupsafe
- mkl
- mpmath
- mslk
- mypy-extensions
- networkx
- nightly
- numpy
- nvidia-cublas
- nvidia-cublas-cu11
- nvidia-cublas-cu12
- nvidia-cuda-cccl
- nvidia-cuda-cccl-cu12
- nvidia-cuda-cupti
- nvidia-cuda-cupti-cu11
- nvidia-cuda-cupti-cu12
- nvidia-cuda-nvrtc
- nvidia-cuda-nvrtc-cu11
- nvidia-cuda-nvrtc-cu12
- nvidia-cuda-runtime
- nvidia-cuda-runtime-cu11
- nvidia-cuda-runtime-cu12
- nvidia-cudnn-cu11
- nvidia-cudnn-cu12
- nvidia-cudnn-cu13
- nvidia-cufft
- nvidia-cufft-cu11
- nvidia-cufft-cu12
- nvidia-cufile
- nvidia-cufile-cu12
- nvidia-curand
- nvidia-curand-cu11
- nvidia-curand-cu12
- nvidia-cusolver
- nvidia-cusolver-cu11
- nvidia-cusolver-cu12
- nvidia-cusparse
- nvidia-cusparse-cu11
- nvidia-cusparse-cu12
- nvidia-cusparselt-cu12
- nvidia-cusparselt-cu13
- nvidia-nccl-cu11
- nvidia-nccl-cu12
- nvidia-nccl-cu13
- nvidia-nvjitlink
- nvidia-nvjitlink-cu12
- nvidia-nvshmem-cu12
- nvidia-nvshmem-cu13
- nvidia-nvtx
- nvidia-nvtx-cu11
- nvidia-nvtx-cu12
- oneccl
- oneccl-devel
- onemkl-license
- onemkl-sycl-blas
- onemkl-sycl-dft
- onemkl-sycl-lapack
- onemkl-sycl-rng
- onemkl-sycl-sparse
- packaging
- pillow
- portalocker
- pyelftools
- pyre-extensions
- pytorch-triton
- pytorch-triton-rocm
- pytorch-triton-xpu
- requests
- rocm3.10
- rocm3.7
- rocm3.8
- rocm4.0.1
- rocm4.1
- rocm4.2
- rocm4.3.1
- rocm4.5.2
- rocm5.0
- rocm5.1.1
- rocm5.2
- rocm5.3
- rocm5.4.2
- rocm5.5
- rocm5.6
- rocm5.7
- rocm6.0
- rocm6.1
- rocm6.2
- rocm6.2.4
- rocm6.3
- rocm6.4
- rocm7.0
- rocm7.1
- rocm7.2
- setuptools
- sympy
- tbb
- tcmlib
- test
- torch
- torch-cuda80
- torch-model-archiver
- torch-nightly
- torch-no-python
- torch-tb-profiler
- torch-tensorrt
- torchao
- torchaudio
- torchcodec
- torchcomms
- torchcsprng
- torchdata
- torchdistx
- torchmetrics
- torchrec
- torchrec-cpu
- torchserve
- torchtext
- torchtune
- torchvision
- tqdm
- triton
- triton-rocm
- triton-xpu
- typing-extensions
- typing-inspect
- umf
- urllib3
- variant
- vllm
- xformers
- xpu
- zipp
- - - \ No newline at end of file diff --git a/tests/pytorch_wheels/whl_cu130.html b/tests/pytorch_wheels/whl_cu130.html deleted file mode 100644 index 60c0109..0000000 --- a/tests/pytorch_wheels/whl_cu130.html +++ /dev/null @@ -1,120 +0,0 @@ - - - - certifi
- charset-normalizer
- cmake
- colorama
- cuda-bindings
- cuda-pathfinder
- cuda-python
- cuda-toolkit
- dpcpp-cpp-rt
- fbgemm-gpu
- fbgemm-gpu-genai
- filelock
- flash-attn-3
- fsspec
- idna
- impi-rt
- importlib-metadata
- intel-cmplr-lib-rt
- intel-cmplr-lib-ur
- intel-cmplr-lic-rt
- intel-opencl-rt
- intel-openmp
- intel-pti
- intel-sycl-rt
- iopath
- jinja2
- lightning-utilities
- lit
- markupsafe
- mkl
- mpmath
- mslk
- mypy-extensions
- networkx
- numpy
- nvidia-cublas
- nvidia-cublas-cu12
- nvidia-cuda-cccl
- nvidia-cuda-cupti
- nvidia-cuda-cupti-cu12
- nvidia-cuda-nvrtc
- nvidia-cuda-nvrtc-cu12
- nvidia-cuda-runtime
- nvidia-cuda-runtime-cu12
- nvidia-cudnn-cu11
- nvidia-cudnn-cu12
- nvidia-cudnn-cu13
- nvidia-cufft
- nvidia-cufft-cu12
- nvidia-cufile
- nvidia-cufile-cu12
- nvidia-curand
- nvidia-curand-cu12
- nvidia-cusolver
- nvidia-cusolver-cu12
- nvidia-cusparse
- nvidia-cusparse-cu12
- nvidia-cusparselt-cu12
- nvidia-cusparselt-cu13
- nvidia-nccl-cu12
- nvidia-nccl-cu13
- nvidia-nvjitlink
- nvidia-nvjitlink-cu12
- nvidia-nvshmem-cu12
- nvidia-nvshmem-cu13
- nvidia-nvtx
- nvidia-nvtx-cu12
- oneccl
- oneccl-devel
- onemkl-sycl-blas
- onemkl-sycl-dft
- onemkl-sycl-lapack
- onemkl-sycl-rng
- onemkl-sycl-sparse
- packaging
- pillow
- portalocker
- pyelftools
- pyre-extensions
- pytorch-triton
- pytorch-triton-rocm
- pytorch-triton-xpu
- requests
- setuptools
- sympy
- tbb
- tcmlib
- torch
- torch-cuda80
- torch-model-archiver
- torch-tb-profiler
- torch-tensorrt
- torchao
- torchaudio
- torchcodec
- torchcomms
- torchcsprng
- torchdata
- torchmetrics
- torchrec
- torchrec-cpu
- torchserve
- torchtext
- torchvision
- tqdm
- triton
- triton-rocm
- triton-xpu
- typing-extensions
- typing-inspect
- umf
- urllib3
- xformers
- zipp
- - - \ No newline at end of file diff --git a/tests/pytorch_wheels/whl_cu130_torch.html b/tests/pytorch_wheels/whl_cu130_torch.html deleted file mode 100644 index e72d069..0000000 --- a/tests/pytorch_wheels/whl_cu130_torch.html +++ /dev/null @@ -1,189 +0,0 @@ - - - -

Links for torch

- torch-2.10.0+cu130-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu130-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu130-cp310-cp310-win_amd64.whl
- torch-2.10.0+cu130-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu130-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu130-cp311-cp311-win_amd64.whl
- torch-2.10.0+cu130-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu130-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu130-cp312-cp312-win_amd64.whl
- torch-2.10.0+cu130-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu130-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu130-cp313-cp313-win_amd64.whl
- torch-2.10.0+cu130-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu130-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu130-cp313-cp313t-win_amd64.whl
- torch-2.10.0+cu130-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu130-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu130-cp314-cp314-win_amd64.whl
- torch-2.10.0+cu130-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu130-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu130-cp314-cp314t-win_amd64.whl
- torch-2.11.0+cu130-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu130-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu130-cp310-cp310-win_amd64.whl
- torch-2.11.0+cu130-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu130-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu130-cp311-cp311-win_amd64.whl
- torch-2.11.0+cu130-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu130-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu130-cp312-cp312-win_amd64.whl
- torch-2.11.0+cu130-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu130-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu130-cp313-cp313-win_amd64.whl
- torch-2.11.0+cu130-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu130-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu130-cp313-cp313t-win_amd64.whl
- torch-2.11.0+cu130-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu130-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu130-cp314-cp314-win_amd64.whl
- torch-2.11.0+cu130-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu130-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu130-cp314-cp314t-win_amd64.whl
- torch-2.9.0+cu130-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu130-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu130-cp310-cp310-win_amd64.whl
- torch-2.9.0+cu130-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu130-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu130-cp311-cp311-win_amd64.whl
- torch-2.9.0+cu130-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu130-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu130-cp312-cp312-win_amd64.whl
- torch-2.9.0+cu130-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu130-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu130-cp313-cp313-win_amd64.whl
- torch-2.9.0+cu130-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu130-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu130-cp313-cp313t-win_amd64.whl
- torch-2.9.0+cu130-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu130-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu130-cp314-cp314-win_amd64.whl
- torch-2.9.0+cu130-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu130-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu130-cp314-cp314t-win_amd64.whl
- torch-2.9.1+cu130-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu130-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu130-cp310-cp310-win_amd64.whl
- torch-2.9.1+cu130-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu130-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu130-cp311-cp311-win_amd64.whl
- torch-2.9.1+cu130-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu130-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu130-cp312-cp312-win_amd64.whl
- torch-2.9.1+cu130-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu130-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu130-cp313-cp313-win_amd64.whl
- torch-2.9.1+cu130-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu130-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu130-cp313-cp313t-win_amd64.whl
- torch-2.9.1+cu130-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu130-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu130-cp314-cp314-win_amd64.whl
- torch-2.9.1+cu130-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu130-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu130-cp314-cp314t-win_amd64.whl
- torch-0.1-cp27-cp27m-macosx_10_6_x86_64.whl
- torch-0.1-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.1.10.post1-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.10.post1-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.1.10.post1-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.1.11.post4-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.11.post4-cp35-cp35m-macosx_10_7_x86_64.whl
- torch-0.1.11.post4-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.1.11.post5-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.11.post5-cp35-cp35m-macosx_10_7_x86_64.whl
- torch-0.1.11.post5-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.1.12.post1-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.12.post1-cp35-cp35m-macosx_10_7_x86_64.whl
- torch-0.1.12.post1-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.1.12.post2-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.12.post2-cp35-cp35m-macosx_10_7_x86_64.whl
- torch-0.1.12.post2-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.1.6.post17-cp27-cp27mu-linux_x86_64.whl
- torch-0.1.6.post17-cp35-cp35m-linux_x86_64.whl
- torch-0.1.6.post20-cp27-cp27mu-linux_x86_64.whl
- torch-0.1.6.post20-cp35-cp35m-linux_x86_64.whl
- torch-0.1.6.post22-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.6.post22-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.1.7.post2-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.7.post2-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.1.7.post2-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.1.8.post1-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.8.post1-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.1.8.post1-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.1.9.post1-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.9.post1-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.1.9.post1-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.1.9.post2-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.9.post2-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.1.9.post2-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.2.0.post1-cp27-none-macosx_10_7_x86_64.whl
- torch-0.2.0.post1-cp35-cp35m-macosx_10_7_x86_64.whl
- torch-0.2.0.post1-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.2.0.post2-cp27-none-macosx_10_7_x86_64.whl
- torch-0.2.0.post2-cp35-cp35m-macosx_10_7_x86_64.whl
- torch-0.2.0.post2-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.2.0.post3-cp27-none-macosx_10_7_x86_64.whl
- torch-0.2.0.post3-cp35-cp35m-macosx_10_7_x86_64.whl
- torch-0.2.0.post3-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.3.0-cp27-none-macosx_10_6_x86_64.whl
- torch-0.3.0-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.3.0-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.3.0.post2-cp27-none-macosx_10_6_x86_64.whl
- torch-0.3.0.post2-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.3.0.post2-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.3.0.post3-cp27-none-macosx_10_6_x86_64.whl
- torch-0.3.0.post3-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.3.0.post3-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.3.0.post4-cp27-none-macosx_10_6_x86_64.whl
- torch-0.3.0.post4-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.3.0.post4-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.3.1-cp27-none-macosx_10_6_x86_64.whl
- torch-0.3.1-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.3.1-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.4.0-cp27-none-macosx_10_6_x86_64.whl
- torch-0.4.0-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.4.0-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.4.1-cp27-none-macosx_10_6_x86_64.whl
- torch-0.4.1-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.4.1-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.4.1-cp37-cp37m-macosx_10_7_x86_64.whl
- torch-1.11.0-cp310-cp310-manylinux2014_aarch64.whl
- torch-1.11.0-cp37-cp37m-manylinux2014_aarch64.whl
- torch-1.11.0-cp38-cp38-manylinux2014_aarch64.whl
- torch-1.11.0-cp39-cp39-manylinux2014_aarch64.whl
- torch-1.12.0-cp310-cp310-manylinux2014_aarch64.whl
- torch-1.12.0-cp37-cp37m-manylinux2014_aarch64.whl
- torch-1.12.0-cp38-cp38-manylinux2014_aarch64.whl
- torch-1.12.0-cp39-cp39-manylinux2014_aarch64.whl
- torch-1.12.1-cp310-cp310-manylinux2014_aarch64.whl
- torch-1.12.1-cp37-cp37m-manylinux2014_aarch64.whl
- torch-1.12.1-cp38-cp38-manylinux2014_aarch64.whl
- torch-1.12.1-cp39-cp39-manylinux2014_aarch64.whl
- torch-1.13.0-cp310-cp310-manylinux2014_aarch64.whl
- torch-1.13.0-cp37-cp37m-manylinux2014_aarch64.whl
- torch-1.13.0-cp38-cp38-manylinux2014_aarch64.whl
- torch-1.13.0-cp39-cp39-manylinux2014_aarch64.whl
- torch-1.13.1-cp310-cp310-manylinux2014_aarch64.whl
- torch-1.13.1-cp37-cp37m-manylinux2014_aarch64.whl
- torch-1.13.1-cp38-cp38-manylinux2014_aarch64.whl
- torch-1.13.1-cp39-cp39-manylinux2014_aarch64.whl
- torch-2.0.0-1-cp310-cp310-manylinux2014_aarch64.whl
- torch-2.0.0-1-cp311-cp311-manylinux2014_aarch64.whl
- torch-2.0.0-1-cp38-cp38-manylinux2014_aarch64.whl
- torch-2.0.0-1-cp39-cp39-manylinux2014_aarch64.whl
- torch-2.0.0-cp310-cp310-manylinux2014_aarch64.whl
- torch-2.0.0-cp311-cp311-manylinux2014_aarch64.whl
- torch-2.0.0-cp38-cp38-manylinux2014_aarch64.whl
- torch-2.0.0-cp39-cp39-manylinux2014_aarch64.whl
- torch-2.0.1-cp310-cp310-manylinux2014_aarch64.whl
- torch-2.0.1-cp311-cp311-manylinux2014_aarch64.whl
- torch-2.0.1-cp38-cp38-manylinux2014_aarch64.whl
- torch-2.0.1-cp39-cp39-manylinux2014_aarch64.whl
- - - \ No newline at end of file diff --git a/tests/pytorch_wheels/whl_torch.html b/tests/pytorch_wheels/whl_torch.html deleted file mode 100644 index 778d6f8..0000000 --- a/tests/pytorch_wheels/whl_torch.html +++ /dev/null @@ -1,3002 +0,0 @@ - - - -

Links for torch

- torch-0.3.0.post4-cp27-cp27m-linux_x86_64.whl
- torch-0.3.0.post4-cp27-cp27mu-linux_x86_64.whl
- torch-0.3.0.post4-cp35-cp35m-linux_x86_64.whl
- torch-0.3.0.post4-cp36-cp36m-linux_x86_64.whl
- torch-0.3.1-cp27-cp27m-linux_x86_64.whl
- torch-0.3.1-cp27-cp27mu-linux_x86_64.whl
- torch-0.3.1-cp35-cp35m-linux_x86_64.whl
- torch-0.3.1-cp36-cp36m-linux_x86_64.whl
- torch-0.4.0-cp27-cp27m-linux_x86_64.whl
- torch-0.4.0-cp27-cp27mu-linux_x86_64.whl
- torch-0.4.0-cp35-cp35m-linux_x86_64.whl
- torch-0.4.0-cp35-cp35m-win_amd64.whl
- torch-0.4.0-cp36-cp36m-linux_x86_64.whl
- torch-0.4.0-cp36-cp36m-win_amd64.whl
- torch-0.4.1-cp27-cp27m-linux_x86_64.whl
- torch-0.4.1-cp27-cp27mu-linux_x86_64.whl
- torch-0.4.1-cp35-cp35m-linux_x86_64.whl
- torch-0.4.1-cp35-cp35m-win_amd64.whl
- torch-0.4.1-cp36-cp36m-linux_x86_64.whl
- torch-0.4.1-cp36-cp36m-win_amd64.whl
- torch-0.4.1-cp37-cp37m-linux_x86_64.whl
- torch-0.4.1-cp37-cp37m-win_amd64.whl
- torch-0.4.1.post2-cp37-cp37m-linux_x86_64.whl
- torch-1.0.0-cp27-cp27m-linux_x86_64.whl
- torch-1.0.0-cp27-cp27mu-linux_x86_64.whl
- torch-1.0.0-cp27-none-macosx_10_6_x86_64.whl
- torch-1.0.0-cp35-cp35m-linux_x86_64.whl
- torch-1.0.0-cp35-cp35m-win_amd64.whl
- torch-1.0.0-cp35-none-macosx_10_6_x86_64.whl
- torch-1.0.0-cp36-cp36m-linux_x86_64.whl
- torch-1.0.0-cp36-cp36m-win_amd64.whl
- torch-1.0.0-cp36-none-macosx_10_7_x86_64.whl
- torch-1.0.0-cp37-cp37m-linux_x86_64.whl
- torch-1.0.0-cp37-cp37m-win_amd64.whl
- torch-1.0.0-cp37-none-macosx_10_7_x86_64.whl
- torch-1.0.1-cp27-cp27m-linux_x86_64.whl
- torch-1.0.1-cp27-cp27mu-linux_x86_64.whl
- torch-1.0.1-cp27-none-macosx_10_6_x86_64.whl
- torch-1.0.1-cp35-cp35m-linux_x86_64.whl
- torch-1.0.1-cp35-cp35m-win_amd64.whl
- torch-1.0.1-cp35-none-macosx_10_6_x86_64.whl
- torch-1.0.1-cp36-cp36m-linux_x86_64.whl
- torch-1.0.1-cp36-cp36m-win_amd64.whl
- torch-1.0.1-cp36-none-macosx_10_7_x86_64.whl
- torch-1.0.1-cp37-cp37m-linux_x86_64.whl
- torch-1.0.1-cp37-cp37m-win_amd64.whl
- torch-1.0.1-cp37-none-macosx_10_7_x86_64.whl
- torch-1.0.1.post2-cp27-cp27m-linux_x86_64.whl
- torch-1.0.1.post2-cp27-cp27mu-linux_x86_64.whl
- torch-1.0.1.post2-cp35-cp35m-linux_x86_64.whl
- torch-1.0.1.post2-cp36-cp36m-linux_x86_64.whl
- torch-1.0.1.post2-cp37-cp37m-linux_x86_64.whl
- torch-1.1.0-cp27-cp27m-linux_x86_64.whl
- torch-1.1.0-cp27-cp27mu-linux_x86_64.whl
- torch-1.1.0-cp27-none-macosx_10_6_x86_64.whl
- torch-1.1.0-cp35-cp35m-linux_x86_64.whl
- torch-1.1.0-cp35-cp35m-win_amd64.whl
- torch-1.1.0-cp35-none-macosx_10_6_x86_64.whl
- torch-1.1.0-cp36-cp36m-linux_x86_64.whl
- torch-1.1.0-cp36-cp36m-win_amd64.whl
- torch-1.1.0-cp36-none-macosx_10_7_x86_64.whl
- torch-1.1.0-cp37-cp37m-linux_x86_64.whl
- torch-1.1.0-cp37-cp37m-win_amd64.whl
- torch-1.1.0-cp37-none-macosx_10_7_x86_64.whl
- torch-1.1.0.post2-cp27-none-macosx_10_6_x86_64.whl
- torch-1.1.0.post2-cp35-none-macosx_10_6_x86_64.whl
- torch-1.1.0.post2-cp36-none-macosx_10_7_x86_64.whl
- torch-1.1.0.post2-cp37-none-macosx_10_7_x86_64.whl
- torch-1.10.0+cpu-cp36-cp36m-linux_x86_64.whl
- torch-1.10.0+cpu-cp36-cp36m-win_amd64.whl
- torch-1.10.0+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.10.0+cpu-cp37-cp37m-win_amd64.whl
- torch-1.10.0+cpu-cp38-cp38-linux_x86_64.whl
- torch-1.10.0+cpu-cp38-cp38-win_amd64.whl
- torch-1.10.0+cpu-cp39-cp39-linux_x86_64.whl
- torch-1.10.0+cpu-cp39-cp39-win_amd64.whl
- torch-1.10.0-cp36-cp36m-manylinux2014_aarch64.whl
- torch-1.10.0-cp36-none-macosx_10_9_x86_64.whl
- torch-1.10.0-cp37-cp37m-manylinux2014_aarch64.whl
- torch-1.10.0-cp37-none-macosx_10_9_x86_64.whl
- torch-1.10.0-cp38-cp38-manylinux2014_aarch64.whl
- torch-1.10.0-cp38-none-macosx_10_9_x86_64.whl
- torch-1.10.0-cp38-none-macosx_11_0_arm64.whl
- torch-1.10.0-cp39-cp39-manylinux2014_aarch64.whl
- torch-1.10.0-cp39-none-macosx_10_9_x86_64.whl
- torch-1.10.0-cp39-none-macosx_11_0_arm64.whl
- torch-1.10.1+cpu-cp36-cp36m-linux_x86_64.whl
- torch-1.10.1+cpu-cp36-cp36m-win_amd64.whl
- torch-1.10.1+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.10.1+cpu-cp37-cp37m-win_amd64.whl
- torch-1.10.1+cpu-cp38-cp38-linux_x86_64.whl
- torch-1.10.1+cpu-cp38-cp38-win_amd64.whl
- torch-1.10.1+cpu-cp39-cp39-linux_x86_64.whl
- torch-1.10.1+cpu-cp39-cp39-win_amd64.whl
- torch-1.10.1-cp36-cp36m-manylinux2014_aarch64.whl
- torch-1.10.1-cp36-none-macosx_10_9_x86_64.whl
- torch-1.10.1-cp37-cp37m-manylinux2014_aarch64.whl
- torch-1.10.1-cp37-none-macosx_10_9_x86_64.whl
- torch-1.10.1-cp38-cp38-manylinux2014_aarch64.whl
- torch-1.10.1-cp38-none-macosx_10_9_x86_64.whl
- torch-1.10.1-cp38-none-macosx_11_0_arm64.whl
- torch-1.10.1-cp39-cp39-manylinux2014_aarch64.whl
- torch-1.10.1-cp39-none-macosx_10_9_x86_64.whl
- torch-1.10.1-cp39-none-macosx_11_0_arm64.whl
- torch-1.10.2+cpu-cp36-cp36m-linux_x86_64.whl
- torch-1.10.2+cpu-cp36-cp36m-win_amd64.whl
- torch-1.10.2+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.10.2+cpu-cp37-cp37m-win_amd64.whl
- torch-1.10.2+cpu-cp38-cp38-linux_x86_64.whl
- torch-1.10.2+cpu-cp38-cp38-win_amd64.whl
- torch-1.10.2+cpu-cp39-cp39-linux_x86_64.whl
- torch-1.10.2+cpu-cp39-cp39-win_amd64.whl
- torch-1.10.2-cp310-cp310-manylinux2014_aarch64.whl
- torch-1.10.2-cp36-cp36m-manylinux2014_aarch64.whl
- torch-1.10.2-cp36-none-macosx_10_9_x86_64.whl
- torch-1.10.2-cp37-cp37m-manylinux2014_aarch64.whl
- torch-1.10.2-cp37-none-macosx_10_9_x86_64.whl
- torch-1.10.2-cp38-cp38-manylinux2014_aarch64.whl
- torch-1.10.2-cp38-none-macosx_10_9_x86_64.whl
- torch-1.10.2-cp38-none-macosx_11_0_arm64.whl
- torch-1.10.2-cp39-cp39-manylinux2014_aarch64.whl
- torch-1.10.2-cp39-none-macosx_10_9_x86_64.whl
- torch-1.10.2-cp39-none-macosx_11_0_arm64.whl
- torch-1.11.0+cpu-cp310-cp310-linux_x86_64.whl
- torch-1.11.0+cpu-cp310-cp310-win_amd64.whl
- torch-1.11.0+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.11.0+cpu-cp37-cp37m-win_amd64.whl
- torch-1.11.0+cpu-cp38-cp38-linux_x86_64.whl
- torch-1.11.0+cpu-cp38-cp38-win_amd64.whl
- torch-1.11.0+cpu-cp39-cp39-linux_x86_64.whl
- torch-1.11.0+cpu-cp39-cp39-win_amd64.whl
- torch-1.11.0-cp310-none-macosx_10_9_x86_64.whl
- torch-1.11.0-cp310-none-macosx_11_0_arm64.whl
- torch-1.11.0-cp37-none-macosx_10_9_x86_64.whl
- torch-1.11.0-cp38-none-macosx_10_9_x86_64.whl
- torch-1.11.0-cp38-none-macosx_11_0_arm64.whl
- torch-1.11.0-cp39-none-macosx_10_9_x86_64.whl
- torch-1.11.0-cp39-none-macosx_11_0_arm64.whl
- torch-1.12.0+cpu-cp310-cp310-linux_x86_64.whl
- torch-1.12.0+cpu-cp310-cp310-win_amd64.whl
- torch-1.12.0+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.12.0+cpu-cp37-cp37m-win_amd64.whl
- torch-1.12.0+cpu-cp38-cp38-linux_x86_64.whl
- torch-1.12.0+cpu-cp38-cp38-win_amd64.whl
- torch-1.12.0+cpu-cp39-cp39-linux_x86_64.whl
- torch-1.12.0+cpu-cp39-cp39-win_amd64.whl
- torch-1.12.0-cp310-cp310-manylinux2014_aarch64.whl
- torch-1.12.0-cp310-none-macosx_10_9_x86_64.whl
- torch-1.12.0-cp310-none-macosx_11_0_arm64.whl
- torch-1.12.0-cp37-cp37m-manylinux2014_aarch64.whl
- torch-1.12.0-cp37-none-macosx_10_9_x86_64.whl
- torch-1.12.0-cp37-none-macosx_11_0_arm64.whl
- torch-1.12.0-cp38-cp38-manylinux2014_aarch64.whl
- torch-1.12.0-cp38-none-macosx_10_9_x86_64.whl
- torch-1.12.0-cp38-none-macosx_11_0_arm64.whl
- torch-1.12.0-cp39-cp39-manylinux2014_aarch64.whl
- torch-1.12.0-cp39-none-macosx_10_9_x86_64.whl
- torch-1.12.0-cp39-none-macosx_11_0_arm64.whl
- torch-1.12.1+cpu-cp310-cp310-linux_x86_64.whl
- torch-1.12.1+cpu-cp310-cp310-win_amd64.whl
- torch-1.12.1+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.12.1+cpu-cp37-cp37m-win_amd64.whl
- torch-1.12.1+cpu-cp38-cp38-linux_x86_64.whl
- torch-1.12.1+cpu-cp38-cp38-win_amd64.whl
- torch-1.12.1+cpu-cp39-cp39-linux_x86_64.whl
- torch-1.12.1+cpu-cp39-cp39-win_amd64.whl
- torch-1.12.1-cp310-none-macosx_10_9_x86_64.whl
- torch-1.12.1-cp310-none-macosx_11_0_arm64.whl
- torch-1.12.1-cp37-none-macosx_10_9_x86_64.whl
- torch-1.12.1-cp37-none-macosx_11_0_arm64.whl
- torch-1.12.1-cp38-none-macosx_10_9_x86_64.whl
- torch-1.12.1-cp38-none-macosx_11_0_arm64.whl
- torch-1.12.1-cp39-none-macosx_10_9_x86_64.whl
- torch-1.12.1-cp39-none-macosx_11_0_arm64.whl
- torch-1.13.0+cpu-cp310-cp310-linux_x86_64.whl
- torch-1.13.0+cpu-cp310-cp310-win_amd64.whl
- torch-1.13.0+cpu-cp311-cp311-linux_x86_64.whl
- torch-1.13.0+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.13.0+cpu-cp37-cp37m-win_amd64.whl
- torch-1.13.0+cpu-cp38-cp38-linux_x86_64.whl
- torch-1.13.0+cpu-cp38-cp38-win_amd64.whl
- torch-1.13.0+cpu-cp39-cp39-linux_x86_64.whl
- torch-1.13.0+cpu-cp39-cp39-win_amd64.whl
- torch-1.13.0-cp310-none-macosx_10_9_x86_64.whl
- torch-1.13.0-cp310-none-macosx_11_0_arm64.whl
- torch-1.13.0-cp37-none-macosx_10_9_x86_64.whl
- torch-1.13.0-cp37-none-macosx_11_0_arm64.whl
- torch-1.13.0-cp38-none-macosx_10_9_x86_64.whl
- torch-1.13.0-cp38-none-macosx_11_0_arm64.whl
- torch-1.13.0-cp39-none-macosx_10_9_x86_64.whl
- torch-1.13.0-cp39-none-macosx_11_0_arm64.whl
- torch-1.13.1+cpu-cp310-cp310-linux_x86_64.whl
- torch-1.13.1+cpu-cp310-cp310-win_amd64.whl
- torch-1.13.1+cpu-cp311-cp311-linux_x86_64.whl
- torch-1.13.1+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.13.1+cpu-cp37-cp37m-win_amd64.whl
- torch-1.13.1+cpu-cp38-cp38-linux_x86_64.whl
- torch-1.13.1+cpu-cp38-cp38-win_amd64.whl
- torch-1.13.1+cpu-cp39-cp39-linux_x86_64.whl
- torch-1.13.1+cpu-cp39-cp39-win_amd64.whl
- torch-1.13.1-cp310-none-macosx_10_9_x86_64.whl
- torch-1.13.1-cp310-none-macosx_11_0_arm64.whl
- torch-1.13.1-cp37-none-macosx_10_9_x86_64.whl
- torch-1.13.1-cp37-none-macosx_11_0_arm64.whl
- torch-1.13.1-cp38-none-macosx_10_9_x86_64.whl
- torch-1.13.1-cp38-none-macosx_11_0_arm64.whl
- torch-1.13.1-cp39-none-macosx_10_9_x86_64.whl
- torch-1.13.1-cp39-none-macosx_11_0_arm64.whl
- torch-1.2.0+cpu-cp27-cp27m-manylinux1_x86_64.whl
- torch-1.2.0+cpu-cp27-cp27mu-manylinux1_x86_64.whl
- torch-1.2.0+cpu-cp35-cp35m-manylinux1_x86_64.whl
- torch-1.2.0+cpu-cp35-cp35m-win_amd64.whl
- torch-1.2.0+cpu-cp36-cp36m-manylinux1_x86_64.whl
- torch-1.2.0+cpu-cp36-cp36m-win_amd64.whl
- torch-1.2.0+cpu-cp37-cp37m-manylinux1_x86_64.whl
- torch-1.2.0+cpu-cp37-cp37m-win_amd64.whl
- torch-1.2.0-cp27-none-macosx_10_6_x86_64.whl
- torch-1.2.0-cp35-none-macosx_10_6_x86_64.whl
- torch-1.2.0-cp36-none-macosx_10_7_x86_64.whl
- torch-1.2.0-cp37-none-macosx_10_7_x86_64.whl
- torch-1.3.0+cpu-cp27-cp27m-linux_x86_64.whl
- torch-1.3.0+cpu-cp27-cp27mu-linux_x86_64.whl
- torch-1.3.0+cpu-cp35-cp35m-linux_x86_64.whl
- torch-1.3.0+cpu-cp35-cp35m-win_amd64.whl
- torch-1.3.0+cpu-cp36-cp36m-linux_x86_64.whl
- torch-1.3.0+cpu-cp36-cp36m-win_amd64.whl
- torch-1.3.0+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.3.0+cpu-cp37-cp37m-win_amd64.whl
- torch-1.3.0-cp35-none-macosx_10_6_x86_64.whl
- torch-1.3.0-cp36-none-macosx_10_7_x86_64.whl
- torch-1.3.0-cp37-none-macosx_10_9_x86_64.whl
- torch-1.3.0.post2-cp27-none-macosx_10_7_x86_64.whl
- torch-1.3.0.post2-cp35-none-macosx_10_6_x86_64.whl
- torch-1.3.0.post2-cp36-none-macosx_10_7_x86_64.whl
- torch-1.3.0.post2-cp37-none-macosx_10_9_x86_64.whl
- torch-1.3.1+cpu-cp27-cp27m-linux_x86_64.whl
- torch-1.3.1+cpu-cp27-cp27mu-linux_x86_64.whl
- torch-1.3.1+cpu-cp35-cp35m-linux_x86_64.whl
- torch-1.3.1+cpu-cp35-cp35m-win_amd64.whl
- torch-1.3.1+cpu-cp36-cp36m-linux_x86_64.whl
- torch-1.3.1+cpu-cp36-cp36m-win_amd64.whl
- torch-1.3.1+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.3.1+cpu-cp37-cp37m-win_amd64.whl
- torch-1.3.1-cp27-none-macosx_10_7_x86_64.whl
- torch-1.3.1-cp35-none-macosx_10_6_x86_64.whl
- torch-1.3.1-cp36-none-macosx_10_7_x86_64.whl
- torch-1.3.1-cp37-none-macosx_10_7_x86_64.whl
- torch-1.4.0+cpu-cp27-cp27m-linux_x86_64.whl
- torch-1.4.0+cpu-cp27-cp27mu-linux_x86_64.whl
- torch-1.4.0+cpu-cp35-cp35m-linux_x86_64.whl
- torch-1.4.0+cpu-cp35-cp35m-win_amd64.whl
- torch-1.4.0+cpu-cp36-cp36m-linux_x86_64.whl
- torch-1.4.0+cpu-cp36-cp36m-win_amd64.whl
- torch-1.4.0+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.4.0+cpu-cp37-cp37m-win_amd64.whl
- torch-1.4.0+cpu-cp38-cp38-linux_x86_64.whl
- torch-1.4.0+cpu-cp38-cp38-win_amd64.whl
- torch-1.4.0-cp27-none-macosx_10_7_x86_64.whl
- torch-1.4.0-cp35-none-macosx_10_6_x86_64.whl
- torch-1.4.0-cp36-none-macosx_10_7_x86_64.whl
- torch-1.4.0-cp36-none-macosx_10_9_x86_64.whl
- torch-1.4.0-cp37-none-macosx_10_7_x86_64.whl
- torch-1.4.0-cp37-none-macosx_10_9_x86_64.whl
- torch-1.4.0-cp38-none-macosx_10_9_x86_64.whl
- torch-1.5.0+cpu-cp27-cp27m-linux_x86_64.whl
- torch-1.5.0+cpu-cp27-cp27mu-linux_x86_64.whl
- torch-1.5.0+cpu-cp35-cp35m-linux_x86_64.whl
- torch-1.5.0+cpu-cp35-cp35m-win_amd64.whl
- torch-1.5.0+cpu-cp36-cp36m-linux_x86_64.whl
- torch-1.5.0+cpu-cp36-cp36m-win_amd64.whl
- torch-1.5.0+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.5.0+cpu-cp37-cp37m-win_amd64.whl
- torch-1.5.0+cpu-cp38-cp38-linux_x86_64.whl
- torch-1.5.0+cpu-cp38-cp38-win_amd64.whl
- torch-1.5.0-cp27-none-macosx_10_7_x86_64.whl
- torch-1.5.0-cp35-none-macosx_10_6_x86_64.whl
- torch-1.5.0-cp36-none-macosx_10_9_x86_64.whl
- torch-1.5.0-cp37-none-macosx_10_9_x86_64.whl
- torch-1.5.0-cp38-none-macosx_10_9_x86_64.whl
- torch-1.5.1+cpu-cp35-cp35m-linux_x86_64.whl
- torch-1.5.1+cpu-cp35-cp35m-win_amd64.whl
- torch-1.5.1+cpu-cp36-cp36m-linux_x86_64.whl
- torch-1.5.1+cpu-cp36-cp36m-win_amd64.whl
- torch-1.5.1+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.5.1+cpu-cp37-cp37m-win_amd64.whl
- torch-1.5.1+cpu-cp38-cp38-linux_x86_64.whl
- torch-1.5.1+cpu-cp38-cp38-win_amd64.whl
- torch-1.5.1-cp35-none-macosx_10_6_x86_64.whl
- torch-1.5.1-cp36-none-macosx_10_9_x86_64.whl
- torch-1.5.1-cp37-none-macosx_10_9_x86_64.whl
- torch-1.5.1-cp38-none-macosx_10_9_x86_64.whl
- torch-1.6.0+cpu-cp36-cp36m-linux_x86_64.whl
- torch-1.6.0+cpu-cp36-cp36m-win_amd64.whl
- torch-1.6.0+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.6.0+cpu-cp37-cp37m-win_amd64.whl
- torch-1.6.0+cpu-cp38-cp38-linux_x86_64.whl
- torch-1.6.0+cpu-cp38-cp38-win_amd64.whl
- torch-1.6.0-cp36-none-macosx_10_9_x86_64.whl
- torch-1.6.0-cp37-none-macosx_10_9_x86_64.whl
- torch-1.6.0-cp38-none-macosx_10_9_x86_64.whl
- torch-1.7.0+cpu-cp36-cp36m-linux_x86_64.whl
- torch-1.7.0+cpu-cp36-cp36m-win_amd64.whl
- torch-1.7.0+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.7.0+cpu-cp37-cp37m-win_amd64.whl
- torch-1.7.0+cpu-cp38-cp38-linux_x86_64.whl
- torch-1.7.0+cpu-cp38-cp38-win_amd64.whl
- torch-1.7.0-cp36-none-macosx_10_9_x86_64.whl
- torch-1.7.0-cp36-none-macosx_11_0_x86_64.whl
- torch-1.7.0-cp37-none-macosx_10_9_x86_64.whl
- torch-1.7.0-cp37-none-macosx_11_0_x86_64.whl
- torch-1.7.0-cp38-none-macosx_10_9_x86_64.whl
- torch-1.7.0-cp38-none-macosx_11_0_x86_64.whl
- torch-1.7.1+cpu-cp36-cp36m-linux_x86_64.whl
- torch-1.7.1+cpu-cp36-cp36m-win_amd64.whl
- torch-1.7.1+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.7.1+cpu-cp37-cp37m-win_amd64.whl
- torch-1.7.1+cpu-cp38-cp38-linux_x86_64.whl
- torch-1.7.1+cpu-cp38-cp38-win_amd64.whl
- torch-1.7.1+cpu-cp39-cp39-linux_x86_64.whl
- torch-1.7.1+cpu-cp39-cp39-win_amd64.whl
- torch-1.7.1-cp36-cp36m-linux_aarch64.whl
- torch-1.7.1-cp36-none-macosx_10_9_x86_64.whl
- torch-1.7.1-cp37-cp37m-linux_aarch64.whl
- torch-1.7.1-cp37-none-macosx_10_9_x86_64.whl
- torch-1.7.1-cp38-cp38-linux_aarch64.whl
- torch-1.7.1-cp38-none-macosx_10_9_x86_64.whl
- torch-1.7.1-cp39-cp39-linux_aarch64.whl
- torch-1.7.1-cp39-none-macosx_10_9_x86_64.whl
- torch-1.8.0+cpu-cp36-cp36m-linux_x86_64.whl
- torch-1.8.0+cpu-cp36-cp36m-win_amd64.whl
- torch-1.8.0+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.8.0+cpu-cp37-cp37m-win_amd64.whl
- torch-1.8.0+cpu-cp38-cp38-linux_x86_64.whl
- torch-1.8.0+cpu-cp38-cp38-win_amd64.whl
- torch-1.8.0+cpu-cp39-cp39-linux_x86_64.whl
- torch-1.8.0+cpu-cp39-cp39-win_amd64.whl
- torch-1.8.0-cp36-cp36m-manylinux2014_aarch64.whl
- torch-1.8.0-cp36-none-macosx_10_9_x86_64.whl
- torch-1.8.0-cp37-cp37m-manylinux2014_aarch64.whl
- torch-1.8.0-cp37-none-macosx_10_9_x86_64.whl
- torch-1.8.0-cp38-cp38-manylinux2014_aarch64.whl
- torch-1.8.0-cp38-none-macosx_10_9_x86_64.whl
- torch-1.8.0-cp38-none-macosx_11_1_arm64.whl
- torch-1.8.0-cp39-cp39-manylinux2014_aarch64.whl
- torch-1.8.0-cp39-none-macosx_10_9_x86_64.whl
- torch-1.8.1+cpu-cp36-cp36m-linux_x86_64.whl
- torch-1.8.1+cpu-cp36-cp36m-win_amd64.whl
- torch-1.8.1+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.8.1+cpu-cp37-cp37m-win_amd64.whl
- torch-1.8.1+cpu-cp38-cp38-linux_x86_64.whl
- torch-1.8.1+cpu-cp38-cp38-win_amd64.whl
- torch-1.8.1+cpu-cp39-cp39-linux_x86_64.whl
- torch-1.8.1+cpu-cp39-cp39-win_amd64.whl
- torch-1.8.1-cp36-cp36m-manylinux2014_aarch64.whl
- torch-1.8.1-cp36-none-macosx_10_9_x86_64.whl
- torch-1.8.1-cp37-cp37m-manylinux2014_aarch64.whl
- torch-1.8.1-cp37-none-macosx_10_9_x86_64.whl
- torch-1.8.1-cp38-cp38-manylinux2014_aarch64.whl
- torch-1.8.1-cp38-none-macosx_10_9_x86_64.whl
- torch-1.8.1-cp38-none-macosx_11_0_arm64.whl
- torch-1.8.1-cp39-cp39-manylinux2014_aarch64.whl
- torch-1.8.1-cp39-none-macosx_10_9_x86_64.whl
- torch-1.9.0+cpu-cp36-cp36m-linux_x86_64.whl
- torch-1.9.0+cpu-cp36-cp36m-win_amd64.whl
- torch-1.9.0+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.9.0+cpu-cp37-cp37m-win_amd64.whl
- torch-1.9.0+cpu-cp38-cp38-linux_x86_64.whl
- torch-1.9.0+cpu-cp38-cp38-win_amd64.whl
- torch-1.9.0+cpu-cp39-cp39-linux_x86_64.whl
- torch-1.9.0+cpu-cp39-cp39-win_amd64.whl
- torch-1.9.0-cp36-cp36m-linux_aarch64.whl
- torch-1.9.0-cp36-cp36m-manylinux2014_aarch64.whl
- torch-1.9.0-cp36-none-macosx_10_9_x86_64.whl
- torch-1.9.0-cp37-cp37m-linux_aarch64.whl
- torch-1.9.0-cp37-cp37m-manylinux2014_aarch64.whl
- torch-1.9.0-cp37-none-macosx_10_9_x86_64.whl
- torch-1.9.0-cp38-cp38-linux_aarch64.whl
- torch-1.9.0-cp38-cp38-manylinux2014_aarch64.whl
- torch-1.9.0-cp38-none-macosx_10_9_x86_64.whl
- torch-1.9.0-cp38-none-macosx_11_0_arm64.whl
- torch-1.9.0-cp39-cp39-linux_aarch64.whl
- torch-1.9.0-cp39-cp39-manylinux2014_aarch64.whl
- torch-1.9.0-cp39-none-macosx_10_9_x86_64.whl
- torch-1.9.0-cp39-none-macosx_11_0_arm64.whl
- torch-1.9.1+cpu-cp36-cp36m-linux_x86_64.whl
- torch-1.9.1+cpu-cp36-cp36m-win_amd64.whl
- torch-1.9.1+cpu-cp37-cp37m-linux_x86_64.whl
- torch-1.9.1+cpu-cp37-cp37m-win_amd64.whl
- torch-1.9.1+cpu-cp38-cp38-linux_x86_64.whl
- torch-1.9.1+cpu-cp38-cp38-win_amd64.whl
- torch-1.9.1+cpu-cp39-cp39-linux_x86_64.whl
- torch-1.9.1+cpu-cp39-cp39-win_amd64.whl
- torch-1.9.1-cp36-none-macosx_10_9_x86_64.whl
- torch-1.9.1-cp37-none-macosx_10_9_x86_64.whl
- torch-1.9.1-cp38-none-macosx_10_9_x86_64.whl
- torch-1.9.1-cp38-none-macosx_11_0_arm64.whl
- torch-1.9.1-cp39-none-macosx_10_9_x86_64.whl
- torch-1.9.1-cp39-none-macosx_11_0_arm64.whl
- torch-2.0.0+cpu-cp310-cp310-linux_x86_64.whl
- torch-2.0.0+cpu-cp310-cp310-win_amd64.whl
- torch-2.0.0+cpu-cp311-cp311-linux_x86_64.whl
- torch-2.0.0+cpu-cp311-cp311-win_amd64.whl
- torch-2.0.0+cpu-cp38-cp38-linux_x86_64.whl
- torch-2.0.0+cpu-cp38-cp38-win_amd64.whl
- torch-2.0.0+cpu-cp39-cp39-linux_x86_64.whl
- torch-2.0.0+cpu-cp39-cp39-win_amd64.whl
- torch-2.0.0-cp310-none-macosx_10_9_x86_64.whl
- torch-2.0.0-cp310-none-macosx_11_0_arm64.whl
- torch-2.0.0-cp311-none-macosx_10_9_x86_64.whl
- torch-2.0.0-cp311-none-macosx_11_0_arm64.whl
- torch-2.0.0-cp38-none-macosx_10_9_x86_64.whl
- torch-2.0.0-cp38-none-macosx_11_0_arm64.whl
- torch-2.0.0-cp39-none-macosx_10_9_x86_64.whl
- torch-2.0.0-cp39-none-macosx_11_0_arm64.whl
- torch-2.0.1+cpu-cp310-cp310-linux_x86_64.whl
- torch-2.0.1+cpu-cp310-cp310-win_amd64.whl
- torch-2.0.1+cpu-cp311-cp311-linux_x86_64.whl
- torch-2.0.1+cpu-cp311-cp311-win_amd64.whl
- torch-2.0.1+cpu-cp38-cp38-linux_x86_64.whl
- torch-2.0.1+cpu-cp38-cp38-win_amd64.whl
- torch-2.0.1+cpu-cp39-cp39-linux_x86_64.whl
- torch-2.0.1+cpu-cp39-cp39-win_amd64.whl
- torch-2.0.1-cp310-none-macosx_10_9_x86_64.whl
- torch-2.0.1-cp310-none-macosx_11_0_arm64.whl
- torch-2.0.1-cp311-none-macosx_10_9_x86_64.whl
- torch-2.0.1-cp311-none-macosx_11_0_arm64.whl
- torch-2.0.1-cp38-none-macosx_10_9_x86_64.whl
- torch-2.0.1-cp38-none-macosx_11_0_arm64.whl
- torch-2.0.1-cp39-none-macosx_10_9_x86_64.whl
- torch-2.0.1-cp39-none-macosx_11_0_arm64.whl
- torch-2.1.0+cpu-cp310-cp310-linux_x86_64.whl
- torch-2.1.0+cpu-cp310-cp310-win_amd64.whl
- torch-2.1.0+cpu-cp311-cp311-linux_x86_64.whl
- torch-2.1.0+cpu-cp311-cp311-win_amd64.whl
- torch-2.1.0+cpu-cp38-cp38-linux_x86_64.whl
- torch-2.1.0+cpu-cp38-cp38-win_amd64.whl
- torch-2.1.0+cpu-cp39-cp39-linux_x86_64.whl
- torch-2.1.0+cpu-cp39-cp39-win_amd64.whl
- torch-2.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.1.0-cp310-none-macosx_10_9_x86_64.whl
- torch-2.1.0-cp310-none-macosx_11_0_arm64.whl
- torch-2.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.1.0-cp311-none-macosx_10_9_x86_64.whl
- torch-2.1.0-cp311-none-macosx_11_0_arm64.whl
- torch-2.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.1.0-cp38-none-macosx_10_9_x86_64.whl
- torch-2.1.0-cp38-none-macosx_11_0_arm64.whl
- torch-2.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.1.0-cp39-none-macosx_10_9_x86_64.whl
- torch-2.1.0-cp39-none-macosx_11_0_arm64.whl
- torch-2.1.1+cpu-cp310-cp310-linux_x86_64.whl
- torch-2.1.1+cpu-cp310-cp310-win_amd64.whl
- torch-2.1.1+cpu-cp311-cp311-linux_x86_64.whl
- torch-2.1.1+cpu-cp311-cp311-win_amd64.whl
- torch-2.1.1+cpu-cp38-cp38-linux_x86_64.whl
- torch-2.1.1+cpu-cp38-cp38-win_amd64.whl
- torch-2.1.1+cpu-cp39-cp39-linux_x86_64.whl
- torch-2.1.1+cpu-cp39-cp39-win_amd64.whl
- torch-2.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.1.1-cp310-none-macosx_10_9_x86_64.whl
- torch-2.1.1-cp310-none-macosx_11_0_arm64.whl
- torch-2.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.1.1-cp311-none-macosx_10_9_x86_64.whl
- torch-2.1.1-cp311-none-macosx_11_0_arm64.whl
- torch-2.1.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.1.1-cp38-none-macosx_10_9_x86_64.whl
- torch-2.1.1-cp38-none-macosx_11_0_arm64.whl
- torch-2.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.1.1-cp39-none-macosx_10_9_x86_64.whl
- torch-2.1.1-cp39-none-macosx_11_0_arm64.whl
- torch-2.1.2+cpu-cp310-cp310-linux_x86_64.whl
- torch-2.1.2+cpu-cp310-cp310-win_amd64.whl
- torch-2.1.2+cpu-cp311-cp311-linux_x86_64.whl
- torch-2.1.2+cpu-cp311-cp311-win_amd64.whl
- torch-2.1.2+cpu-cp38-cp38-linux_x86_64.whl
- torch-2.1.2+cpu-cp38-cp38-win_amd64.whl
- torch-2.1.2+cpu-cp39-cp39-linux_x86_64.whl
- torch-2.1.2+cpu-cp39-cp39-win_amd64.whl
- torch-2.1.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.1.2-cp310-none-macosx_10_9_x86_64.whl
- torch-2.1.2-cp310-none-macosx_11_0_arm64.whl
- torch-2.1.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.1.2-cp311-none-macosx_10_9_x86_64.whl
- torch-2.1.2-cp311-none-macosx_11_0_arm64.whl
- torch-2.1.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.1.2-cp38-none-macosx_10_9_x86_64.whl
- torch-2.1.2-cp38-none-macosx_11_0_arm64.whl
- torch-2.1.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.1.2-cp39-none-macosx_10_9_x86_64.whl
- torch-2.1.2-cp39-none-macosx_11_0_arm64.whl
- torch-2.10.0+cpu-cp310-cp310-linux_aarch64.whl
- torch-2.10.0+cpu-cp310-cp310-linux_s390x.whl
- torch-2.10.0+cpu-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.10.0+cpu-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.10.0+cpu-cp310-cp310-win_amd64.whl
- torch-2.10.0+cpu-cp311-cp311-linux_aarch64.whl
- torch-2.10.0+cpu-cp311-cp311-linux_s390x.whl
- torch-2.10.0+cpu-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.10.0+cpu-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.10.0+cpu-cp311-cp311-win_amd64.whl
- torch-2.10.0+cpu-cp311-cp311-win_arm64.whl
- torch-2.10.0+cpu-cp312-cp312-linux_aarch64.whl
- torch-2.10.0+cpu-cp312-cp312-linux_s390x.whl
- torch-2.10.0+cpu-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.10.0+cpu-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.10.0+cpu-cp312-cp312-win_amd64.whl
- torch-2.10.0+cpu-cp312-cp312-win_arm64.whl
- torch-2.10.0+cpu-cp313-cp313-linux_aarch64.whl
- torch-2.10.0+cpu-cp313-cp313-linux_s390x.whl
- torch-2.10.0+cpu-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.10.0+cpu-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.10.0+cpu-cp313-cp313-win_amd64.whl
- torch-2.10.0+cpu-cp313-cp313-win_arm64.whl
- torch-2.10.0+cpu-cp313-cp313t-linux_aarch64.whl
- torch-2.10.0+cpu-cp313-cp313t-linux_s390x.whl
- torch-2.10.0+cpu-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.10.0+cpu-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.10.0+cpu-cp313-cp313t-win_amd64.whl
- torch-2.10.0+cpu-cp314-cp314-linux_aarch64.whl
- torch-2.10.0+cpu-cp314-cp314-linux_s390x.whl
- torch-2.10.0+cpu-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.10.0+cpu-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.10.0+cpu-cp314-cp314-win_amd64.whl
- torch-2.10.0+cpu-cp314-cp314t-linux_aarch64.whl
- torch-2.10.0+cpu-cp314-cp314t-linux_s390x.whl
- torch-2.10.0+cpu-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.10.0+cpu-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.10.0+cpu-cp314-cp314t-win_amd64.whl
- torch-2.10.0-1-cp310-none-macosx_11_0_arm64.whl
- torch-2.10.0-1-cp311-none-macosx_11_0_arm64.whl
- torch-2.10.0-1-cp312-none-macosx_11_0_arm64.whl
- torch-2.10.0-1-cp313-none-macosx_11_0_arm64.whl
- torch-2.10.0-2-cp310-none-macosx_11_0_arm64.whl
- torch-2.10.0-2-cp311-none-macosx_11_0_arm64.whl
- torch-2.10.0-2-cp312-none-macosx_11_0_arm64.whl
- torch-2.10.0-2-cp313-none-macosx_11_0_arm64.whl
- torch-2.10.0-cp310-none-macosx_11_0_arm64.whl
- torch-2.10.0-cp311-none-macosx_11_0_arm64.whl
- torch-2.10.0-cp312-none-macosx_11_0_arm64.whl
- torch-2.10.0-cp313-cp313t-macosx_14_0_arm64.whl
- torch-2.10.0-cp313-none-macosx_11_0_arm64.whl
- torch-2.10.0-cp314-cp314-macosx_14_0_arm64.whl
- torch-2.10.0-cp314-cp314t-macosx_14_0_arm64.whl
- torch-2.11.0+cpu-cp310-cp310-linux_s390x.whl
- torch-2.11.0+cpu-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.11.0+cpu-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.11.0+cpu-cp310-cp310-win_amd64.whl
- torch-2.11.0+cpu-cp311-cp311-linux_s390x.whl
- torch-2.11.0+cpu-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.11.0+cpu-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.11.0+cpu-cp311-cp311-win_amd64.whl
- torch-2.11.0+cpu-cp312-cp312-linux_s390x.whl
- torch-2.11.0+cpu-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.11.0+cpu-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.11.0+cpu-cp312-cp312-win_amd64.whl
- torch-2.11.0+cpu-cp313-cp313-linux_s390x.whl
- torch-2.11.0+cpu-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.11.0+cpu-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.11.0+cpu-cp313-cp313-win_amd64.whl
- torch-2.11.0+cpu-cp313-cp313t-linux_s390x.whl
- torch-2.11.0+cpu-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.11.0+cpu-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.11.0+cpu-cp313-cp313t-win_amd64.whl
- torch-2.11.0+cpu-cp314-cp314-linux_s390x.whl
- torch-2.11.0+cpu-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.11.0+cpu-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.11.0+cpu-cp314-cp314-win_amd64.whl
- torch-2.11.0+cpu-cp314-cp314t-linux_s390x.whl
- torch-2.11.0+cpu-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.11.0+cpu-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.11.0+cpu-cp314-cp314t-win_amd64.whl
- torch-2.11.0-cp310-cp310-macosx_11_0_arm64.whl
- torch-2.11.0-cp311-cp311-macosx_11_0_arm64.whl
- torch-2.11.0-cp312-cp312-macosx_11_0_arm64.whl
- torch-2.11.0-cp313-cp313-macosx_11_0_arm64.whl
- torch-2.11.0-cp313-cp313t-macosx_11_0_arm64.whl
- torch-2.11.0-cp314-cp314-macosx_11_0_arm64.whl
- torch-2.11.0-cp314-cp314t-macosx_11_0_arm64.whl
- torch-2.2.0+cpu-cp310-cp310-linux_x86_64.whl
- torch-2.2.0+cpu-cp310-cp310-win_amd64.whl
- torch-2.2.0+cpu-cp311-cp311-linux_x86_64.whl
- torch-2.2.0+cpu-cp311-cp311-win_amd64.whl
- torch-2.2.0+cpu-cp312-cp312-linux_x86_64.whl
- torch-2.2.0+cpu-cp312-cp312-win_amd64.whl
- torch-2.2.0+cpu-cp38-cp38-linux_x86_64.whl
- torch-2.2.0+cpu-cp38-cp38-win_amd64.whl
- torch-2.2.0+cpu-cp39-cp39-linux_x86_64.whl
- torch-2.2.0+cpu-cp39-cp39-win_amd64.whl
- torch-2.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.2.0-cp310-none-macosx_10_9_x86_64.whl
- torch-2.2.0-cp310-none-macosx_11_0_arm64.whl
- torch-2.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.2.0-cp311-none-macosx_10_9_x86_64.whl
- torch-2.2.0-cp311-none-macosx_11_0_arm64.whl
- torch-2.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.2.0-cp312-none-macosx_10_9_x86_64.whl
- torch-2.2.0-cp312-none-macosx_11_0_arm64.whl
- torch-2.2.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.2.0-cp38-none-macosx_10_9_x86_64.whl
- torch-2.2.0-cp38-none-macosx_11_0_arm64.whl
- torch-2.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.2.0-cp39-none-macosx_10_9_x86_64.whl
- torch-2.2.0-cp39-none-macosx_11_0_arm64.whl
- torch-2.2.1+cpu-cp310-cp310-linux_x86_64.whl
- torch-2.2.1+cpu-cp310-cp310-win_amd64.whl
- torch-2.2.1+cpu-cp311-cp311-linux_x86_64.whl
- torch-2.2.1+cpu-cp311-cp311-win_amd64.whl
- torch-2.2.1+cpu-cp312-cp312-linux_x86_64.whl
- torch-2.2.1+cpu-cp312-cp312-win_amd64.whl
- torch-2.2.1+cpu-cp38-cp38-linux_x86_64.whl
- torch-2.2.1+cpu-cp38-cp38-win_amd64.whl
- torch-2.2.1+cpu-cp39-cp39-linux_x86_64.whl
- torch-2.2.1+cpu-cp39-cp39-win_amd64.whl
- torch-2.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.2.1-cp310-none-macosx_10_9_x86_64.whl
- torch-2.2.1-cp310-none-macosx_11_0_arm64.whl
- torch-2.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.2.1-cp311-none-macosx_10_9_x86_64.whl
- torch-2.2.1-cp311-none-macosx_11_0_arm64.whl
- torch-2.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.2.1-cp312-none-macosx_10_9_x86_64.whl
- torch-2.2.1-cp312-none-macosx_11_0_arm64.whl
- torch-2.2.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.2.1-cp38-none-macosx_10_9_x86_64.whl
- torch-2.2.1-cp38-none-macosx_11_0_arm64.whl
- torch-2.2.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.2.1-cp39-none-macosx_10_9_x86_64.whl
- torch-2.2.1-cp39-none-macosx_11_0_arm64.whl
- torch-2.2.2+cpu-cp310-cp310-linux_x86_64.whl
- torch-2.2.2+cpu-cp310-cp310-win_amd64.whl
- torch-2.2.2+cpu-cp311-cp311-linux_x86_64.whl
- torch-2.2.2+cpu-cp311-cp311-win_amd64.whl
- torch-2.2.2+cpu-cp312-cp312-linux_x86_64.whl
- torch-2.2.2+cpu-cp312-cp312-win_amd64.whl
- torch-2.2.2+cpu-cp38-cp38-linux_x86_64.whl
- torch-2.2.2+cpu-cp38-cp38-win_amd64.whl
- torch-2.2.2+cpu-cp39-cp39-linux_x86_64.whl
- torch-2.2.2+cpu-cp39-cp39-win_amd64.whl
- torch-2.2.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.2.2-cp310-none-macosx_10_9_x86_64.whl
- torch-2.2.2-cp310-none-macosx_11_0_arm64.whl
- torch-2.2.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.2.2-cp311-none-macosx_10_9_x86_64.whl
- torch-2.2.2-cp311-none-macosx_11_0_arm64.whl
- torch-2.2.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.2.2-cp312-none-macosx_10_9_x86_64.whl
- torch-2.2.2-cp312-none-macosx_11_0_arm64.whl
- torch-2.2.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.2.2-cp38-none-macosx_10_9_x86_64.whl
- torch-2.2.2-cp38-none-macosx_11_0_arm64.whl
- torch-2.2.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.2.2-cp39-none-macosx_10_9_x86_64.whl
- torch-2.2.2-cp39-none-macosx_11_0_arm64.whl
- torch-2.3.0+cpu-cp310-cp310-linux_x86_64.whl
- torch-2.3.0+cpu-cp310-cp310-win_amd64.whl
- torch-2.3.0+cpu-cp311-cp311-linux_x86_64.whl
- torch-2.3.0+cpu-cp311-cp311-win_amd64.whl
- torch-2.3.0+cpu-cp312-cp312-linux_x86_64.whl
- torch-2.3.0+cpu-cp312-cp312-win_amd64.whl
- torch-2.3.0+cpu-cp38-cp38-linux_x86_64.whl
- torch-2.3.0+cpu-cp38-cp38-win_amd64.whl
- torch-2.3.0+cpu-cp39-cp39-linux_x86_64.whl
- torch-2.3.0+cpu-cp39-cp39-win_amd64.whl
- torch-2.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.3.0-cp310-none-macosx_11_0_arm64.whl
- torch-2.3.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.3.0-cp311-none-macosx_11_0_arm64.whl
- torch-2.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.3.0-cp312-none-macosx_11_0_arm64.whl
- torch-2.3.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.3.0-cp38-none-macosx_11_0_arm64.whl
- torch-2.3.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.3.0-cp39-none-macosx_11_0_arm64.whl
- torch-2.3.1+cpu-cp310-cp310-linux_x86_64.whl
- torch-2.3.1+cpu-cp310-cp310-win_amd64.whl
- torch-2.3.1+cpu-cp311-cp311-linux_x86_64.whl
- torch-2.3.1+cpu-cp311-cp311-win_amd64.whl
- torch-2.3.1+cpu-cp312-cp312-linux_x86_64.whl
- torch-2.3.1+cpu-cp312-cp312-win_amd64.whl
- torch-2.3.1+cpu-cp38-cp38-linux_x86_64.whl
- torch-2.3.1+cpu-cp38-cp38-win_amd64.whl
- torch-2.3.1+cpu-cp39-cp39-linux_x86_64.whl
- torch-2.3.1+cpu-cp39-cp39-win_amd64.whl
- torch-2.3.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.3.1-cp310-none-macosx_11_0_arm64.whl
- torch-2.3.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.3.1-cp311-none-macosx_11_0_arm64.whl
- torch-2.3.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.3.1-cp312-none-macosx_11_0_arm64.whl
- torch-2.3.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.3.1-cp38-none-macosx_11_0_arm64.whl
- torch-2.3.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.3.1-cp39-none-macosx_11_0_arm64.whl
- torch-2.4.0+cpu-cp310-cp310-linux_x86_64.whl
- torch-2.4.0+cpu-cp310-cp310-win_amd64.whl
- torch-2.4.0+cpu-cp311-cp311-linux_x86_64.whl
- torch-2.4.0+cpu-cp311-cp311-win_amd64.whl
- torch-2.4.0+cpu-cp312-cp312-linux_x86_64.whl
- torch-2.4.0+cpu-cp312-cp312-win_amd64.whl
- torch-2.4.0+cpu-cp38-cp38-linux_x86_64.whl
- torch-2.4.0+cpu-cp38-cp38-win_amd64.whl
- torch-2.4.0+cpu-cp39-cp39-linux_x86_64.whl
- torch-2.4.0+cpu-cp39-cp39-win_amd64.whl
- torch-2.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.4.0-cp310-none-macosx_11_0_arm64.whl
- torch-2.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.4.0-cp311-none-macosx_11_0_arm64.whl
- torch-2.4.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.4.0-cp312-none-macosx_11_0_arm64.whl
- torch-2.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.4.0-cp38-none-macosx_11_0_arm64.whl
- torch-2.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.4.0-cp39-none-macosx_11_0_arm64.whl
- torch-2.4.1+cpu-cp310-cp310-linux_x86_64.whl
- torch-2.4.1+cpu-cp310-cp310-win_amd64.whl
- torch-2.4.1+cpu-cp311-cp311-linux_x86_64.whl
- torch-2.4.1+cpu-cp311-cp311-win_amd64.whl
- torch-2.4.1+cpu-cp312-cp312-linux_x86_64.whl
- torch-2.4.1+cpu-cp312-cp312-win_amd64.whl
- torch-2.4.1+cpu-cp38-cp38-linux_x86_64.whl
- torch-2.4.1+cpu-cp38-cp38-win_amd64.whl
- torch-2.4.1+cpu-cp39-cp39-linux_x86_64.whl
- torch-2.4.1+cpu-cp39-cp39-win_amd64.whl
- torch-2.4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.4.1-cp310-none-macosx_11_0_arm64.whl
- torch-2.4.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.4.1-cp311-none-macosx_11_0_arm64.whl
- torch-2.4.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.4.1-cp312-none-macosx_11_0_arm64.whl
- torch-2.4.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.4.1-cp38-none-macosx_11_0_arm64.whl
- torch-2.4.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.4.1-cp39-none-macosx_11_0_arm64.whl
- torch-2.5.0+cpu-cp310-cp310-linux_x86_64.whl
- torch-2.5.0+cpu-cp310-cp310-win_amd64.whl
- torch-2.5.0+cpu-cp311-cp311-linux_x86_64.whl
- torch-2.5.0+cpu-cp311-cp311-win_amd64.whl
- torch-2.5.0+cpu-cp312-cp312-linux_x86_64.whl
- torch-2.5.0+cpu-cp312-cp312-win_amd64.whl
- torch-2.5.0+cpu-cp313-cp313-linux_x86_64.whl
- torch-2.5.0+cpu-cp39-cp39-linux_x86_64.whl
- torch-2.5.0+cpu-cp39-cp39-win_amd64.whl
- torch-2.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.5.0-cp310-none-macosx_11_0_arm64.whl
- torch-2.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.5.0-cp311-none-macosx_11_0_arm64.whl
- torch-2.5.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.5.0-cp312-none-macosx_11_0_arm64.whl
- torch-2.5.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.5.0-cp39-none-macosx_11_0_arm64.whl
- torch-2.5.1+cpu-cp310-cp310-linux_x86_64.whl
- torch-2.5.1+cpu-cp310-cp310-win_amd64.whl
- torch-2.5.1+cpu-cp311-cp311-linux_x86_64.whl
- torch-2.5.1+cpu-cp311-cp311-win_amd64.whl
- torch-2.5.1+cpu-cp312-cp312-linux_x86_64.whl
- torch-2.5.1+cpu-cp312-cp312-win_amd64.whl
- torch-2.5.1+cpu-cp313-cp313-linux_x86_64.whl
- torch-2.5.1+cpu-cp39-cp39-linux_x86_64.whl
- torch-2.5.1+cpu-cp39-cp39-win_amd64.whl
- torch-2.5.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.5.1-cp310-none-macosx_11_0_arm64.whl
- torch-2.5.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.5.1-cp311-none-macosx_11_0_arm64.whl
- torch-2.5.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.5.1-cp312-none-macosx_11_0_arm64.whl
- torch-2.5.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- torch-2.5.1-cp39-none-macosx_11_0_arm64.whl
- torch-2.6.0+cpu-cp310-cp310-linux_x86_64.whl
- torch-2.6.0+cpu-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.6.0+cpu-cp310-cp310-win_amd64.whl
- torch-2.6.0+cpu-cp311-cp311-linux_x86_64.whl
- torch-2.6.0+cpu-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.6.0+cpu-cp311-cp311-win_amd64.whl
- torch-2.6.0+cpu-cp312-cp312-linux_x86_64.whl
- torch-2.6.0+cpu-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.6.0+cpu-cp312-cp312-win_amd64.whl
- torch-2.6.0+cpu-cp313-cp313-linux_x86_64.whl
- torch-2.6.0+cpu-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.6.0+cpu-cp313-cp313-win_amd64.whl
- torch-2.6.0+cpu-cp313-cp313t-linux_x86_64.whl
- torch-2.6.0+cpu-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.6.0+cpu-cp39-cp39-linux_x86_64.whl
- torch-2.6.0+cpu-cp39-cp39-manylinux_2_28_aarch64.whl
- torch-2.6.0+cpu-cp39-cp39-win_amd64.whl
- torch-2.6.0-cp310-none-macosx_11_0_arm64.whl
- torch-2.6.0-cp311-none-macosx_11_0_arm64.whl
- torch-2.6.0-cp312-none-macosx_11_0_arm64.whl
- torch-2.6.0-cp313-none-macosx_11_0_arm64.whl
- torch-2.6.0-cp39-none-macosx_11_0_arm64.whl
- torch-2.7.0+cpu-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.7.0+cpu-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.7.0+cpu-cp310-cp310-win_amd64.whl
- torch-2.7.0+cpu-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.7.0+cpu-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.7.0+cpu-cp311-cp311-win_amd64.whl
- torch-2.7.0+cpu-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.7.0+cpu-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.7.0+cpu-cp312-cp312-win_amd64.whl
- torch-2.7.0+cpu-cp312-cp312-win_arm64.whl
- torch-2.7.0+cpu-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.7.0+cpu-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.7.0+cpu-cp313-cp313-win_amd64.whl
- torch-2.7.0+cpu-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.7.0+cpu-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.7.0+cpu-cp313-cp313t-win_amd64.whl
- torch-2.7.0+cpu-cp39-cp39-manylinux_2_28_aarch64.whl
- torch-2.7.0+cpu-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.7.0+cpu-cp39-cp39-win_amd64.whl
- torch-2.7.0-cp310-none-macosx_11_0_arm64.whl
- torch-2.7.0-cp311-none-macosx_11_0_arm64.whl
- torch-2.7.0-cp312-none-macosx_11_0_arm64.whl
- torch-2.7.0-cp313-cp313t-macosx_14_0_arm64.whl
- torch-2.7.0-cp313-none-macosx_11_0_arm64.whl
- torch-2.7.0-cp39-none-macosx_11_0_arm64.whl
- torch-2.7.1+cpu-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.7.1+cpu-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.7.1+cpu-cp310-cp310-win_amd64.whl
- torch-2.7.1+cpu-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.7.1+cpu-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.7.1+cpu-cp311-cp311-win_amd64.whl
- torch-2.7.1+cpu-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.7.1+cpu-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.7.1+cpu-cp312-cp312-win_amd64.whl
- torch-2.7.1+cpu-cp312-cp312-win_arm64.whl
- torch-2.7.1+cpu-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.7.1+cpu-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.7.1+cpu-cp313-cp313-win_amd64.whl
- torch-2.7.1+cpu-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.7.1+cpu-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.7.1+cpu-cp313-cp313t-win_amd64.whl
- torch-2.7.1+cpu-cp39-cp39-manylinux_2_28_aarch64.whl
- torch-2.7.1+cpu-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.7.1+cpu-cp39-cp39-win_amd64.whl
- torch-2.7.1-cp310-none-macosx_11_0_arm64.whl
- torch-2.7.1-cp311-none-macosx_11_0_arm64.whl
- torch-2.7.1-cp312-none-macosx_11_0_arm64.whl
- torch-2.7.1-cp313-cp313t-macosx_14_0_arm64.whl
- torch-2.7.1-cp313-none-macosx_11_0_arm64.whl
- torch-2.7.1-cp39-none-macosx_11_0_arm64.whl
- torch-2.8.0+cpu-cp310-cp310-linux_s390x.whl
- torch-2.8.0+cpu-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.8.0+cpu-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.8.0+cpu-cp310-cp310-win_amd64.whl
- torch-2.8.0+cpu-cp311-cp311-linux_s390x.whl
- torch-2.8.0+cpu-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.8.0+cpu-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.8.0+cpu-cp311-cp311-win_amd64.whl
- torch-2.8.0+cpu-cp311-cp311-win_arm64.whl
- torch-2.8.0+cpu-cp312-cp312-linux_s390x.whl
- torch-2.8.0+cpu-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.8.0+cpu-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.8.0+cpu-cp312-cp312-win_amd64.whl
- torch-2.8.0+cpu-cp312-cp312-win_arm64.whl
- torch-2.8.0+cpu-cp313-cp313-linux_s390x.whl
- torch-2.8.0+cpu-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.8.0+cpu-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.8.0+cpu-cp313-cp313-win_amd64.whl
- torch-2.8.0+cpu-cp313-cp313-win_arm64.whl
- torch-2.8.0+cpu-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.8.0+cpu-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.8.0+cpu-cp313-cp313t-win_amd64.whl
- torch-2.8.0+cpu-cp39-cp39-linux_s390x.whl
- torch-2.8.0+cpu-cp39-cp39-manylinux_2_28_aarch64.whl
- torch-2.8.0+cpu-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.8.0+cpu-cp39-cp39-win_amd64.whl
- torch-2.8.0-cp310-none-macosx_11_0_arm64.whl
- torch-2.8.0-cp311-none-macosx_11_0_arm64.whl
- torch-2.8.0-cp312-none-macosx_11_0_arm64.whl
- torch-2.8.0-cp313-cp313t-macosx_14_0_arm64.whl
- torch-2.8.0-cp313-none-macosx_11_0_arm64.whl
- torch-2.8.0-cp39-none-macosx_11_0_arm64.whl
- torch-2.9.0+cpu-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.9.0+cpu-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.9.0+cpu-cp310-cp310-win_amd64.whl
- torch-2.9.0+cpu-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.9.0+cpu-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.9.0+cpu-cp311-cp311-win_amd64.whl
- torch-2.9.0+cpu-cp311-cp311-win_arm64.whl
- torch-2.9.0+cpu-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.9.0+cpu-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.9.0+cpu-cp312-cp312-win_amd64.whl
- torch-2.9.0+cpu-cp312-cp312-win_arm64.whl
- torch-2.9.0+cpu-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.9.0+cpu-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.9.0+cpu-cp313-cp313-win_amd64.whl
- torch-2.9.0+cpu-cp313-cp313-win_arm64.whl
- torch-2.9.0+cpu-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.9.0+cpu-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.9.0+cpu-cp313-cp313t-win_amd64.whl
- torch-2.9.0+cpu-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.9.0+cpu-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.9.0+cpu-cp314-cp314-win_amd64.whl
- torch-2.9.0+cpu-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.9.0+cpu-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.9.0+cpu-cp314-cp314t-win_amd64.whl
- torch-2.9.0-cp310-none-macosx_11_0_arm64.whl
- torch-2.9.0-cp311-none-macosx_11_0_arm64.whl
- torch-2.9.0-cp312-none-macosx_11_0_arm64.whl
- torch-2.9.0-cp313-cp313t-macosx_11_0_arm64.whl
- torch-2.9.0-cp313-none-macosx_11_0_arm64.whl
- torch-2.9.0-cp314-cp314-macosx_11_0_arm64.whl
- torch-2.9.0-cp314-cp314t-macosx_11_0_arm64.whl
- torch-2.9.1+cpu-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.9.1+cpu-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.9.1+cpu-cp310-cp310-win_amd64.whl
- torch-2.9.1+cpu-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.9.1+cpu-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.9.1+cpu-cp311-cp311-win_amd64.whl
- torch-2.9.1+cpu-cp311-cp311-win_arm64.whl
- torch-2.9.1+cpu-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.9.1+cpu-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.9.1+cpu-cp312-cp312-win_amd64.whl
- torch-2.9.1+cpu-cp312-cp312-win_arm64.whl
- torch-2.9.1+cpu-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.9.1+cpu-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.9.1+cpu-cp313-cp313-win_amd64.whl
- torch-2.9.1+cpu-cp313-cp313-win_arm64.whl
- torch-2.9.1+cpu-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.9.1+cpu-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.9.1+cpu-cp313-cp313t-win_amd64.whl
- torch-2.9.1+cpu-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.9.1+cpu-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.9.1+cpu-cp314-cp314-win_amd64.whl
- torch-2.9.1+cpu-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.9.1+cpu-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.9.1+cpu-cp314-cp314t-win_amd64.whl
- torch-2.9.1-cp310-none-macosx_11_0_arm64.whl
- torch-2.9.1-cp311-none-macosx_11_0_arm64.whl
- torch-2.9.1-cp312-none-macosx_11_0_arm64.whl
- torch-2.9.1-cp313-cp313t-macosx_11_0_arm64.whl
- torch-2.9.1-cp313-none-macosx_11_0_arm64.whl
- torch-2.9.1-cp314-cp314-macosx_11_0_arm64.whl
- torch-2.9.1-cp314-cp314t-macosx_11_0_arm64.whl
- torch-1.0.0-cp27-cp27m-linux_x86_64.whl
- torch-1.0.0-cp27-cp27mu-linux_x86_64.whl
- torch-1.0.0-cp35-cp35m-linux_x86_64.whl
- torch-1.0.0-cp35-cp35m-win_amd64.whl
- torch-1.0.0-cp36-cp36m-linux_x86_64.whl
- torch-1.0.0-cp36-cp36m-win_amd64.whl
- torch-1.0.0-cp37-cp37m-linux_x86_64.whl
- torch-1.0.0-cp37-cp37m-win_amd64.whl
- torch-1.0.1-cp27-cp27m-linux_x86_64.whl
- torch-1.0.1-cp27-cp27mu-linux_x86_64.whl
- torch-1.0.1-cp35-cp35m-linux_x86_64.whl
- torch-1.0.1-cp35-cp35m-win_amd64.whl
- torch-1.0.1-cp36-cp36m-linux_x86_64.whl
- torch-1.0.1-cp36-cp36m-win_amd64.whl
- torch-1.0.1-cp37-cp37m-linux_x86_64.whl
- torch-1.0.1-cp37-cp37m-win_amd64.whl
- torch-1.0.1.post2-cp27-cp27m-linux_x86_64.whl
- torch-1.0.1.post2-cp27-cp27mu-linux_x86_64.whl
- torch-1.0.1.post2-cp35-cp35m-linux_x86_64.whl
- torch-1.0.1.post2-cp36-cp36m-linux_x86_64.whl
- torch-1.0.1.post2-cp37-cp37m-linux_x86_64.whl
- torch-1.1.0-cp27-cp27m-linux_x86_64.whl
- torch-1.1.0-cp27-cp27mu-linux_x86_64.whl
- torch-1.1.0-cp35-cp35m-linux_x86_64.whl
- torch-1.1.0-cp35-cp35m-win_amd64.whl
- torch-1.1.0-cp36-cp36m-linux_x86_64.whl
- torch-1.1.0-cp36-cp36m-win_amd64.whl
- torch-1.1.0-cp37-cp37m-linux_x86_64.whl
- torch-1.1.0-cp37-cp37m-win_amd64.whl
- torch-1.2.0-cp27-cp27m-manylinux1_x86_64.whl
- torch-1.2.0-cp27-cp27mu-manylinux1_x86_64.whl
- torch-1.2.0-cp35-cp35m-manylinux1_x86_64.whl
- torch-1.2.0-cp35-cp35m-win_amd64.whl
- torch-1.2.0-cp36-cp36m-manylinux1_x86_64.whl
- torch-1.2.0-cp36-cp36m-win_amd64.whl
- torch-1.2.0-cp37-cp37m-manylinux1_x86_64.whl
- torch-1.2.0-cp37-cp37m-win_amd64.whl
- torch-1.3.0+cu100-cp27-cp27m-linux_x86_64.whl
- torch-1.3.0+cu100-cp27-cp27mu-linux_x86_64.whl
- torch-1.3.0+cu100-cp35-cp35m-linux_x86_64.whl
- torch-1.3.0+cu100-cp36-cp36m-linux_x86_64.whl
- torch-1.3.0+cu100-cp37-cp37m-linux_x86_64.whl
- torch-1.3.1+cu100-cp27-cp27m-linux_x86_64.whl
- torch-1.3.1+cu100-cp27-cp27mu-linux_x86_64.whl
- torch-1.3.1+cu100-cp35-cp35m-linux_x86_64.whl
- torch-1.3.1+cu100-cp36-cp36m-linux_x86_64.whl
- torch-1.3.1+cu100-cp37-cp37m-linux_x86_64.whl
- torch-1.4.0+cu100-cp27-cp27m-linux_x86_64.whl
- torch-1.4.0+cu100-cp27-cp27mu-linux_x86_64.whl
- torch-1.4.0+cu100-cp35-cp35m-linux_x86_64.whl
- torch-1.4.0+cu100-cp36-cp36m-linux_x86_64.whl
- torch-1.4.0+cu100-cp37-cp37m-linux_x86_64.whl
- torch-1.4.0+cu100-cp38-cp38-linux_x86_64.whl
- torch-1.3.0-cp27-cp27m-manylinux1_x86_64.whl
- torch-1.3.0-cp27-cp27mu-manylinux1_x86_64.whl
- torch-1.3.0-cp35-cp35m-manylinux1_x86_64.whl
- torch-1.3.0-cp35-cp35m-win_amd64.whl
- torch-1.3.0-cp36-cp36m-manylinux1_x86_64.whl
- torch-1.3.0-cp36-cp36m-win_amd64.whl
- torch-1.3.0-cp37-cp37m-manylinux1_x86_64.whl
- torch-1.3.0-cp37-cp37m-win_amd64.whl
- torch-1.3.1-cp27-cp27m-linux_x86_64.whl
- torch-1.3.1-cp27-cp27mu-linux_x86_64.whl
- torch-1.3.1-cp35-cp35m-linux_x86_64.whl
- torch-1.3.1-cp35-cp35m-win_amd64.whl
- torch-1.3.1-cp36-cp36m-linux_x86_64.whl
- torch-1.3.1-cp36-cp36m-win_amd64.whl
- torch-1.3.1-cp37-cp37m-linux_x86_64.whl
- torch-1.3.1-cp37-cp37m-win_amd64.whl
- torch-1.4.0-cp27-cp27m-linux_x86_64.whl
- torch-1.4.0-cp27-cp27mu-linux_x86_64.whl
- torch-1.4.0-cp35-cp35m-linux_x86_64.whl
- torch-1.4.0-cp35-cp35m-win_amd64.whl
- torch-1.4.0-cp36-cp36m-linux_x86_64.whl
- torch-1.4.0-cp36-cp36m-win_amd64.whl
- torch-1.4.0-cp37-cp37m-linux_x86_64.whl
- torch-1.4.0-cp37-cp37m-win_amd64.whl
- torch-1.4.0-cp38-cp38-linux_x86_64.whl
- torch-1.4.0-cp38-cp38-win_amd64.whl
- torch-1.5.0+cu101-cp35-cp35m-linux_x86_64.whl
- torch-1.5.0+cu101-cp35-cp35m-win_amd64.whl
- torch-1.5.0+cu101-cp36-cp36m-linux_x86_64.whl
- torch-1.5.0+cu101-cp36-cp36m-win_amd64.whl
- torch-1.5.0+cu101-cp37-cp37m-linux_x86_64.whl
- torch-1.5.0+cu101-cp37-cp37m-win_amd64.whl
- torch-1.5.0+cu101-cp38-cp38-linux_x86_64.whl
- torch-1.5.0+cu101-cp38-cp38-win_amd64.whl
- torch-1.5.1+cu101-cp35-cp35m-linux_x86_64.whl
- torch-1.5.1+cu101-cp35-cp35m-win_amd64.whl
- torch-1.5.1+cu101-cp36-cp36m-linux_x86_64.whl
- torch-1.5.1+cu101-cp36-cp36m-win_amd64.whl
- torch-1.5.1+cu101-cp37-cp37m-linux_x86_64.whl
- torch-1.5.1+cu101-cp37-cp37m-win_amd64.whl
- torch-1.5.1+cu101-cp38-cp38-linux_x86_64.whl
- torch-1.5.1+cu101-cp38-cp38-win_amd64.whl
- torch-1.6.0+cu101-cp36-cp36m-linux_x86_64.whl
- torch-1.6.0+cu101-cp36-cp36m-win_amd64.whl
- torch-1.6.0+cu101-cp37-cp37m-linux_x86_64.whl
- torch-1.6.0+cu101-cp37-cp37m-win_amd64.whl
- torch-1.6.0+cu101-cp38-cp38-linux_x86_64.whl
- torch-1.6.0+cu101-cp38-cp38-win_amd64.whl
- torch-1.7.0+cu101-cp36-cp36m-linux_x86_64.whl
- torch-1.7.0+cu101-cp36-cp36m-win_amd64.whl
- torch-1.7.0+cu101-cp37-cp37m-linux_x86_64.whl
- torch-1.7.0+cu101-cp37-cp37m-win_amd64.whl
- torch-1.7.0+cu101-cp38-cp38-linux_x86_64.whl
- torch-1.7.0+cu101-cp38-cp38-win_amd64.whl
- torch-1.7.1+cu101-cp36-cp36m-linux_x86_64.whl
- torch-1.7.1+cu101-cp36-cp36m-win_amd64.whl
- torch-1.7.1+cu101-cp37-cp37m-linux_x86_64.whl
- torch-1.7.1+cu101-cp37-cp37m-win_amd64.whl
- torch-1.7.1+cu101-cp38-cp38-linux_x86_64.whl
- torch-1.7.1+cu101-cp38-cp38-win_amd64.whl
- torch-1.7.1+cu101-cp39-cp39-linux_x86_64.whl
- torch-1.7.1+cu101-cp39-cp39-win_amd64.whl
- torch-1.8.0+cu101-cp36-cp36m-linux_x86_64.whl
- torch-1.8.0+cu101-cp36-cp36m-win_amd64.whl
- torch-1.8.0+cu101-cp37-cp37m-linux_x86_64.whl
- torch-1.8.0+cu101-cp37-cp37m-win_amd64.whl
- torch-1.8.0+cu101-cp38-cp38-linux_x86_64.whl
- torch-1.8.0+cu101-cp38-cp38-win_amd64.whl
- torch-1.8.0+cu101-cp39-cp39-linux_x86_64.whl
- torch-1.8.0+cu101-cp39-cp39-win_amd64.whl
- torch-1.8.1+cu101-cp36-cp36m-linux_x86_64.whl
- torch-1.8.1+cu101-cp36-cp36m-win_amd64.whl
- torch-1.8.1+cu101-cp37-cp37m-linux_x86_64.whl
- torch-1.8.1+cu101-cp37-cp37m-win_amd64.whl
- torch-1.8.1+cu101-cp38-cp38-linux_x86_64.whl
- torch-1.8.1+cu101-cp38-cp38-win_amd64.whl
- torch-1.8.1+cu101-cp39-cp39-linux_x86_64.whl
- torch-1.8.1+cu101-cp39-cp39-win_amd64.whl
- torch-1.10.0+cu102-cp36-cp36m-linux_x86_64.whl
- torch-1.10.0+cu102-cp36-cp36m-win_amd64.whl
- torch-1.10.0+cu102-cp37-cp37m-linux_x86_64.whl
- torch-1.10.0+cu102-cp37-cp37m-win_amd64.whl
- torch-1.10.0+cu102-cp38-cp38-linux_x86_64.whl
- torch-1.10.0+cu102-cp38-cp38-win_amd64.whl
- torch-1.10.0+cu102-cp39-cp39-linux_x86_64.whl
- torch-1.10.0+cu102-cp39-cp39-win_amd64.whl
- torch-1.10.1+cu102-cp36-cp36m-linux_x86_64.whl
- torch-1.10.1+cu102-cp36-cp36m-win_amd64.whl
- torch-1.10.1+cu102-cp37-cp37m-linux_x86_64.whl
- torch-1.10.1+cu102-cp37-cp37m-win_amd64.whl
- torch-1.10.1+cu102-cp38-cp38-linux_x86_64.whl
- torch-1.10.1+cu102-cp38-cp38-win_amd64.whl
- torch-1.10.1+cu102-cp39-cp39-linux_x86_64.whl
- torch-1.10.1+cu102-cp39-cp39-win_amd64.whl
- torch-1.10.2+cu102-cp36-cp36m-linux_x86_64.whl
- torch-1.10.2+cu102-cp36-cp36m-win_amd64.whl
- torch-1.10.2+cu102-cp37-cp37m-linux_x86_64.whl
- torch-1.10.2+cu102-cp37-cp37m-win_amd64.whl
- torch-1.10.2+cu102-cp38-cp38-linux_x86_64.whl
- torch-1.10.2+cu102-cp38-cp38-win_amd64.whl
- torch-1.10.2+cu102-cp39-cp39-linux_x86_64.whl
- torch-1.10.2+cu102-cp39-cp39-win_amd64.whl
- torch-1.11.0+cu102-cp310-cp310-linux_x86_64.whl
- torch-1.11.0+cu102-cp37-cp37m-linux_x86_64.whl
- torch-1.11.0+cu102-cp38-cp38-linux_x86_64.whl
- torch-1.11.0+cu102-cp39-cp39-linux_x86_64.whl
- torch-1.12.0+cu102-cp310-cp310-linux_x86_64.whl
- torch-1.12.0+cu102-cp37-cp37m-linux_x86_64.whl
- torch-1.12.0+cu102-cp38-cp38-linux_x86_64.whl
- torch-1.12.0+cu102-cp39-cp39-linux_x86_64.whl
- torch-1.12.1+cu102-cp310-cp310-linux_x86_64.whl
- torch-1.12.1+cu102-cp37-cp37m-linux_x86_64.whl
- torch-1.12.1+cu102-cp38-cp38-linux_x86_64.whl
- torch-1.12.1+cu102-cp39-cp39-linux_x86_64.whl
- torch-1.5.0-cp35-cp35m-linux_x86_64.whl
- torch-1.5.0-cp35-cp35m-win_amd64.whl
- torch-1.5.0-cp36-cp36m-linux_x86_64.whl
- torch-1.5.0-cp36-cp36m-win_amd64.whl
- torch-1.5.0-cp37-cp37m-linux_x86_64.whl
- torch-1.5.0-cp37-cp37m-win_amd64.whl
- torch-1.5.0-cp38-cp38-linux_x86_64.whl
- torch-1.5.0-cp38-cp38-win_amd64.whl
- torch-1.5.1-cp35-cp35m-linux_x86_64.whl
- torch-1.5.1-cp35-cp35m-win_amd64.whl
- torch-1.5.1-cp36-cp36m-linux_x86_64.whl
- torch-1.5.1-cp36-cp36m-win_amd64.whl
- torch-1.5.1-cp37-cp37m-linux_x86_64.whl
- torch-1.5.1-cp37-cp37m-win_amd64.whl
- torch-1.5.1-cp38-cp38-linux_x86_64.whl
- torch-1.5.1-cp38-cp38-win_amd64.whl
- torch-1.6.0-cp36-cp36m-linux_x86_64.whl
- torch-1.6.0-cp36-cp36m-win_amd64.whl
- torch-1.6.0-cp37-cp37m-linux_x86_64.whl
- torch-1.6.0-cp37-cp37m-win_amd64.whl
- torch-1.6.0-cp38-cp38-linux_x86_64.whl
- torch-1.6.0-cp38-cp38-win_amd64.whl
- torch-1.7.0-cp36-cp36m-linux_x86_64.whl
- torch-1.7.0-cp36-cp36m-win_amd64.whl
- torch-1.7.0-cp37-cp37m-linux_x86_64.whl
- torch-1.7.0-cp37-cp37m-win_amd64.whl
- torch-1.7.0-cp38-cp38-linux_x86_64.whl
- torch-1.7.0-cp38-cp38-win_amd64.whl
- torch-1.7.1-cp36-cp36m-linux_x86_64.whl
- torch-1.7.1-cp36-cp36m-win_amd64.whl
- torch-1.7.1-cp37-cp37m-linux_x86_64.whl
- torch-1.7.1-cp37-cp37m-win_amd64.whl
- torch-1.7.1-cp38-cp38-linux_x86_64.whl
- torch-1.7.1-cp38-cp38-win_amd64.whl
- torch-1.7.1-cp39-cp39-linux_x86_64.whl
- torch-1.7.1-cp39-cp39-win_amd64.whl
- torch-1.8.0-cp36-cp36m-linux_x86_64.whl
- torch-1.8.0-cp36-cp36m-win_amd64.whl
- torch-1.8.0-cp37-cp37m-linux_x86_64.whl
- torch-1.8.0-cp37-cp37m-win_amd64.whl
- torch-1.8.0-cp38-cp38-linux_x86_64.whl
- torch-1.8.0-cp38-cp38-win_amd64.whl
- torch-1.8.0-cp39-cp39-linux_x86_64.whl
- torch-1.8.0-cp39-cp39-win_amd64.whl
- torch-1.8.1+cu102-cp36-cp36m-linux_x86_64.whl
- torch-1.8.1+cu102-cp36-cp36m-win_amd64.whl
- torch-1.8.1+cu102-cp37-cp37m-linux_x86_64.whl
- torch-1.8.1+cu102-cp37-cp37m-win_amd64.whl
- torch-1.8.1+cu102-cp38-cp38-linux_x86_64.whl
- torch-1.8.1+cu102-cp38-cp38-win_amd64.whl
- torch-1.8.1+cu102-cp39-cp39-linux_x86_64.whl
- torch-1.8.1+cu102-cp39-cp39-win_amd64.whl
- torch-1.9.0+cu102-cp36-cp36m-linux_x86_64.whl
- torch-1.9.0+cu102-cp36-cp36m-win_amd64.whl
- torch-1.9.0+cu102-cp37-cp37m-linux_x86_64.whl
- torch-1.9.0+cu102-cp37-cp37m-win_amd64.whl
- torch-1.9.0+cu102-cp38-cp38-linux_x86_64.whl
- torch-1.9.0+cu102-cp38-cp38-win_amd64.whl
- torch-1.9.0+cu102-cp39-cp39-linux_x86_64.whl
- torch-1.9.0+cu102-cp39-cp39-win_amd64.whl
- torch-1.9.1+cu102-cp36-cp36m-linux_x86_64.whl
- torch-1.9.1+cu102-cp36-cp36m-win_amd64.whl
- torch-1.9.1+cu102-cp37-cp37m-linux_x86_64.whl
- torch-1.9.1+cu102-cp37-cp37m-win_amd64.whl
- torch-1.9.1+cu102-cp38-cp38-linux_x86_64.whl
- torch-1.9.1+cu102-cp38-cp38-win_amd64.whl
- torch-1.9.1+cu102-cp39-cp39-linux_x86_64.whl
- torch-1.9.1+cu102-cp39-cp39-win_amd64.whl
- torch-1.7.0+cu110-cp36-cp36m-linux_x86_64.whl
- torch-1.7.0+cu110-cp36-cp36m-win_amd64.whl
- torch-1.7.0+cu110-cp37-cp37m-linux_x86_64.whl
- torch-1.7.0+cu110-cp37-cp37m-win_amd64.whl
- torch-1.7.0+cu110-cp38-cp38-linux_x86_64.whl
- torch-1.7.0+cu110-cp38-cp38-win_amd64.whl
- torch-1.7.1+cu110-cp36-cp36m-linux_x86_64.whl
- torch-1.7.1+cu110-cp36-cp36m-win_amd64.whl
- torch-1.7.1+cu110-cp37-cp37m-linux_x86_64.whl
- torch-1.7.1+cu110-cp37-cp37m-win_amd64.whl
- torch-1.7.1+cu110-cp38-cp38-linux_x86_64.whl
- torch-1.7.1+cu110-cp38-cp38-win_amd64.whl
- torch-1.7.1+cu110-cp39-cp39-linux_x86_64.whl
- torch-1.7.1+cu110-cp39-cp39-win_amd64.whl
- torch-1.10.0+cu111-cp36-cp36m-linux_x86_64.whl
- torch-1.10.0+cu111-cp36-cp36m-win_amd64.whl
- torch-1.10.0+cu111-cp37-cp37m-linux_x86_64.whl
- torch-1.10.0+cu111-cp37-cp37m-win_amd64.whl
- torch-1.10.0+cu111-cp38-cp38-linux_x86_64.whl
- torch-1.10.0+cu111-cp38-cp38-win_amd64.whl
- torch-1.10.0+cu111-cp39-cp39-linux_x86_64.whl
- torch-1.10.0+cu111-cp39-cp39-win_amd64.whl
- torch-1.10.1+cu111-cp36-cp36m-linux_x86_64.whl
- torch-1.10.1+cu111-cp36-cp36m-win_amd64.whl
- torch-1.10.1+cu111-cp37-cp37m-linux_x86_64.whl
- torch-1.10.1+cu111-cp37-cp37m-win_amd64.whl
- torch-1.10.1+cu111-cp38-cp38-linux_x86_64.whl
- torch-1.10.1+cu111-cp38-cp38-win_amd64.whl
- torch-1.10.1+cu111-cp39-cp39-linux_x86_64.whl
- torch-1.10.1+cu111-cp39-cp39-win_amd64.whl
- torch-1.10.2+cu111-cp36-cp36m-linux_x86_64.whl
- torch-1.10.2+cu111-cp36-cp36m-win_amd64.whl
- torch-1.10.2+cu111-cp37-cp37m-linux_x86_64.whl
- torch-1.10.2+cu111-cp37-cp37m-win_amd64.whl
- torch-1.10.2+cu111-cp38-cp38-linux_x86_64.whl
- torch-1.10.2+cu111-cp38-cp38-win_amd64.whl
- torch-1.10.2+cu111-cp39-cp39-linux_x86_64.whl
- torch-1.10.2+cu111-cp39-cp39-win_amd64.whl
- torch-1.8.0+cu111-cp36-cp36m-linux_x86_64.whl
- torch-1.8.0+cu111-cp36-cp36m-win_amd64.whl
- torch-1.8.0+cu111-cp37-cp37m-linux_x86_64.whl
- torch-1.8.0+cu111-cp37-cp37m-win_amd64.whl
- torch-1.8.0+cu111-cp38-cp38-linux_x86_64.whl
- torch-1.8.0+cu111-cp38-cp38-win_amd64.whl
- torch-1.8.0+cu111-cp39-cp39-linux_x86_64.whl
- torch-1.8.0+cu111-cp39-cp39-win_amd64.whl
- torch-1.8.1+cu111-cp36-cp36m-linux_x86_64.whl
- torch-1.8.1+cu111-cp36-cp36m-win_amd64.whl
- torch-1.8.1+cu111-cp37-cp37m-linux_x86_64.whl
- torch-1.8.1+cu111-cp37-cp37m-win_amd64.whl
- torch-1.8.1+cu111-cp38-cp38-linux_x86_64.whl
- torch-1.8.1+cu111-cp38-cp38-win_amd64.whl
- torch-1.8.1+cu111-cp39-cp39-linux_x86_64.whl
- torch-1.8.1+cu111-cp39-cp39-win_amd64.whl
- torch-1.9.0+cu111-cp36-cp36m-linux_x86_64.whl
- torch-1.9.0+cu111-cp36-cp36m-win_amd64.whl
- torch-1.9.0+cu111-cp37-cp37m-linux_x86_64.whl
- torch-1.9.0+cu111-cp37-cp37m-win_amd64.whl
- torch-1.9.0+cu111-cp38-cp38-linux_x86_64.whl
- torch-1.9.0+cu111-cp38-cp38-win_amd64.whl
- torch-1.9.0+cu111-cp39-cp39-linux_x86_64.whl
- torch-1.9.0+cu111-cp39-cp39-win_amd64.whl
- torch-1.9.1+cu111-cp36-cp36m-linux_x86_64.whl
- torch-1.9.1+cu111-cp36-cp36m-win_amd64.whl
- torch-1.9.1+cu111-cp37-cp37m-linux_x86_64.whl
- torch-1.9.1+cu111-cp37-cp37m-win_amd64.whl
- torch-1.9.1+cu111-cp38-cp38-linux_x86_64.whl
- torch-1.9.1+cu111-cp38-cp38-win_amd64.whl
- torch-1.9.1+cu111-cp39-cp39-linux_x86_64.whl
- torch-1.9.1+cu111-cp39-cp39-win_amd64.whl
- torch-1.10.0+cu113-cp36-cp36m-linux_x86_64.whl
- torch-1.10.0+cu113-cp36-cp36m-win_amd64.whl
- torch-1.10.0+cu113-cp37-cp37m-linux_x86_64.whl
- torch-1.10.0+cu113-cp37-cp37m-win_amd64.whl
- torch-1.10.0+cu113-cp38-cp38-linux_x86_64.whl
- torch-1.10.0+cu113-cp38-cp38-win_amd64.whl
- torch-1.10.0+cu113-cp39-cp39-linux_x86_64.whl
- torch-1.10.0+cu113-cp39-cp39-win_amd64.whl
- torch-1.10.1+cu113-cp36-cp36m-linux_x86_64.whl
- torch-1.10.1+cu113-cp36-cp36m-win_amd64.whl
- torch-1.10.1+cu113-cp37-cp37m-linux_x86_64.whl
- torch-1.10.1+cu113-cp37-cp37m-win_amd64.whl
- torch-1.10.1+cu113-cp38-cp38-linux_x86_64.whl
- torch-1.10.1+cu113-cp38-cp38-win_amd64.whl
- torch-1.10.1+cu113-cp39-cp39-linux_x86_64.whl
- torch-1.10.1+cu113-cp39-cp39-win_amd64.whl
- torch-1.10.2+cu113-cp36-cp36m-linux_x86_64.whl
- torch-1.10.2+cu113-cp36-cp36m-win_amd64.whl
- torch-1.10.2+cu113-cp37-cp37m-linux_x86_64.whl
- torch-1.10.2+cu113-cp37-cp37m-win_amd64.whl
- torch-1.10.2+cu113-cp38-cp38-linux_x86_64.whl
- torch-1.10.2+cu113-cp38-cp38-win_amd64.whl
- torch-1.10.2+cu113-cp39-cp39-linux_x86_64.whl
- torch-1.10.2+cu113-cp39-cp39-win_amd64.whl
- torch-1.11.0+cu113-cp310-cp310-linux_x86_64.whl
- torch-1.11.0+cu113-cp310-cp310-win_amd64.whl
- torch-1.11.0+cu113-cp37-cp37m-linux_x86_64.whl
- torch-1.11.0+cu113-cp37-cp37m-win_amd64.whl
- torch-1.11.0+cu113-cp38-cp38-linux_x86_64.whl
- torch-1.11.0+cu113-cp38-cp38-win_amd64.whl
- torch-1.11.0+cu113-cp39-cp39-linux_x86_64.whl
- torch-1.11.0+cu113-cp39-cp39-win_amd64.whl
- torch-1.12.0+cu113-cp310-cp310-linux_x86_64.whl
- torch-1.12.0+cu113-cp310-cp310-win_amd64.whl
- torch-1.12.0+cu113-cp37-cp37m-linux_x86_64.whl
- torch-1.12.0+cu113-cp37-cp37m-win_amd64.whl
- torch-1.12.0+cu113-cp38-cp38-linux_x86_64.whl
- torch-1.12.0+cu113-cp38-cp38-win_amd64.whl
- torch-1.12.0+cu113-cp39-cp39-linux_x86_64.whl
- torch-1.12.0+cu113-cp39-cp39-win_amd64.whl
- torch-1.12.1+cu113-cp310-cp310-linux_x86_64.whl
- torch-1.12.1+cu113-cp310-cp310-win_amd64.whl
- torch-1.12.1+cu113-cp37-cp37m-linux_x86_64.whl
- torch-1.12.1+cu113-cp37-cp37m-win_amd64.whl
- torch-1.12.1+cu113-cp38-cp38-linux_x86_64.whl
- torch-1.12.1+cu113-cp38-cp38-win_amd64.whl
- torch-1.12.1+cu113-cp39-cp39-linux_x86_64.whl
- torch-1.12.1+cu113-cp39-cp39-win_amd64.whl
- torch-1.11.0+cu115-cp310-cp310-linux_x86_64.whl
- torch-1.11.0+cu115-cp310-cp310-win_amd64.whl
- torch-1.11.0+cu115-cp37-cp37m-linux_x86_64.whl
- torch-1.11.0+cu115-cp37-cp37m-win_amd64.whl
- torch-1.11.0+cu115-cp38-cp38-linux_x86_64.whl
- torch-1.11.0+cu115-cp38-cp38-win_amd64.whl
- torch-1.11.0+cu115-cp39-cp39-linux_x86_64.whl
- torch-1.11.0+cu115-cp39-cp39-win_amd64.whl
- torch-1.12.0+cu116-cp310-cp310-linux_x86_64.whl
- torch-1.12.0+cu116-cp310-cp310-win_amd64.whl
- torch-1.12.0+cu116-cp37-cp37m-linux_x86_64.whl
- torch-1.12.0+cu116-cp37-cp37m-win_amd64.whl
- torch-1.12.0+cu116-cp38-cp38-linux_x86_64.whl
- torch-1.12.0+cu116-cp38-cp38-win_amd64.whl
- torch-1.12.0+cu116-cp39-cp39-linux_x86_64.whl
- torch-1.12.0+cu116-cp39-cp39-win_amd64.whl
- torch-1.12.1+cu116-cp310-cp310-linux_x86_64.whl
- torch-1.12.1+cu116-cp310-cp310-win_amd64.whl
- torch-1.12.1+cu116-cp37-cp37m-linux_x86_64.whl
- torch-1.12.1+cu116-cp37-cp37m-win_amd64.whl
- torch-1.12.1+cu116-cp38-cp38-linux_x86_64.whl
- torch-1.12.1+cu116-cp38-cp38-win_amd64.whl
- torch-1.12.1+cu116-cp39-cp39-linux_x86_64.whl
- torch-1.12.1+cu116-cp39-cp39-win_amd64.whl
- torch-1.13.0+cu116-cp310-cp310-linux_x86_64.whl
- torch-1.13.0+cu116-cp310-cp310-win_amd64.whl
- torch-1.13.0+cu116-cp311-cp311-linux_x86_64.whl
- torch-1.13.0+cu116-cp37-cp37m-linux_x86_64.whl
- torch-1.13.0+cu116-cp37-cp37m-win_amd64.whl
- torch-1.13.0+cu116-cp38-cp38-linux_x86_64.whl
- torch-1.13.0+cu116-cp38-cp38-win_amd64.whl
- torch-1.13.0+cu116-cp39-cp39-linux_x86_64.whl
- torch-1.13.0+cu116-cp39-cp39-win_amd64.whl
- torch-1.13.1+cu116-cp310-cp310-linux_x86_64.whl
- torch-1.13.1+cu116-cp310-cp310-win_amd64.whl
- torch-1.13.1+cu116-cp311-cp311-linux_x86_64.whl
- torch-1.13.1+cu116-cp37-cp37m-linux_x86_64.whl
- torch-1.13.1+cu116-cp37-cp37m-win_amd64.whl
- torch-1.13.1+cu116-cp38-cp38-linux_x86_64.whl
- torch-1.13.1+cu116-cp38-cp38-win_amd64.whl
- torch-1.13.1+cu116-cp39-cp39-linux_x86_64.whl
- torch-1.13.1+cu116-cp39-cp39-win_amd64.whl
- torch-1.13.0+cu117-cp310-cp310-linux_x86_64.whl
- torch-1.13.0+cu117-cp310-cp310-win_amd64.whl
- torch-1.13.0+cu117-cp311-cp311-linux_x86_64.whl
- torch-1.13.0+cu117-cp37-cp37m-linux_x86_64.whl
- torch-1.13.0+cu117-cp37-cp37m-win_amd64.whl
- torch-1.13.0+cu117-cp38-cp38-linux_x86_64.whl
- torch-1.13.0+cu117-cp38-cp38-win_amd64.whl
- torch-1.13.0+cu117-cp39-cp39-linux_x86_64.whl
- torch-1.13.0+cu117-cp39-cp39-win_amd64.whl
- torch-1.13.1+cu117-cp310-cp310-linux_x86_64.whl
- torch-1.13.1+cu117-cp310-cp310-win_amd64.whl
- torch-1.13.1+cu117-cp311-cp311-linux_x86_64.whl
- torch-1.13.1+cu117-cp37-cp37m-linux_x86_64.whl
- torch-1.13.1+cu117-cp37-cp37m-win_amd64.whl
- torch-1.13.1+cu117-cp38-cp38-linux_x86_64.whl
- torch-1.13.1+cu117-cp38-cp38-win_amd64.whl
- torch-1.13.1+cu117-cp39-cp39-linux_x86_64.whl
- torch-1.13.1+cu117-cp39-cp39-win_amd64.whl
- torch-2.0.0+cu117-cp310-cp310-linux_x86_64.whl
- torch-2.0.0+cu117-cp310-cp310-win_amd64.whl
- torch-2.0.0+cu117-cp311-cp311-linux_x86_64.whl
- torch-2.0.0+cu117-cp311-cp311-win_amd64.whl
- torch-2.0.0+cu117-cp38-cp38-linux_x86_64.whl
- torch-2.0.0+cu117-cp38-cp38-win_amd64.whl
- torch-2.0.0+cu117-cp39-cp39-linux_x86_64.whl
- torch-2.0.0+cu117-cp39-cp39-win_amd64.whl
- torch-2.0.1+cu117-cp310-cp310-linux_x86_64.whl
- torch-2.0.1+cu117-cp310-cp310-win_amd64.whl
- torch-2.0.1+cu117-cp311-cp311-linux_x86_64.whl
- torch-2.0.1+cu117-cp311-cp311-win_amd64.whl
- torch-2.0.1+cu117-cp38-cp38-linux_x86_64.whl
- torch-2.0.1+cu117-cp38-cp38-win_amd64.whl
- torch-2.0.1+cu117-cp39-cp39-linux_x86_64.whl
- torch-2.0.1+cu117-cp39-cp39-win_amd64.whl
- torch-2.0.0+cu118-cp310-cp310-linux_x86_64.whl
- torch-2.0.0+cu118-cp310-cp310-win_amd64.whl
- torch-2.0.0+cu118-cp311-cp311-linux_x86_64.whl
- torch-2.0.0+cu118-cp311-cp311-win_amd64.whl
- torch-2.0.0+cu118-cp38-cp38-linux_x86_64.whl
- torch-2.0.0+cu118-cp38-cp38-win_amd64.whl
- torch-2.0.0+cu118-cp39-cp39-linux_x86_64.whl
- torch-2.0.0+cu118-cp39-cp39-win_amd64.whl
- torch-2.0.1+cu118-cp310-cp310-linux_x86_64.whl
- torch-2.0.1+cu118-cp310-cp310-win_amd64.whl
- torch-2.0.1+cu118-cp311-cp311-linux_x86_64.whl
- torch-2.0.1+cu118-cp311-cp311-win_amd64.whl
- torch-2.0.1+cu118-cp38-cp38-linux_x86_64.whl
- torch-2.0.1+cu118-cp38-cp38-win_amd64.whl
- torch-2.0.1+cu118-cp39-cp39-linux_x86_64.whl
- torch-2.0.1+cu118-cp39-cp39-win_amd64.whl
- torch-2.1.0+cu118-cp310-cp310-linux_x86_64.whl
- torch-2.1.0+cu118-cp310-cp310-win_amd64.whl
- torch-2.1.0+cu118-cp311-cp311-linux_x86_64.whl
- torch-2.1.0+cu118-cp311-cp311-win_amd64.whl
- torch-2.1.0+cu118-cp38-cp38-linux_x86_64.whl
- torch-2.1.0+cu118-cp38-cp38-win_amd64.whl
- torch-2.1.0+cu118-cp39-cp39-linux_x86_64.whl
- torch-2.1.0+cu118-cp39-cp39-win_amd64.whl
- torch-2.1.1+cu118-cp310-cp310-linux_x86_64.whl
- torch-2.1.1+cu118-cp310-cp310-win_amd64.whl
- torch-2.1.1+cu118-cp311-cp311-linux_x86_64.whl
- torch-2.1.1+cu118-cp311-cp311-win_amd64.whl
- torch-2.1.1+cu118-cp38-cp38-linux_x86_64.whl
- torch-2.1.1+cu118-cp38-cp38-win_amd64.whl
- torch-2.1.1+cu118-cp39-cp39-linux_x86_64.whl
- torch-2.1.1+cu118-cp39-cp39-win_amd64.whl
- torch-2.1.2+cu118-cp310-cp310-linux_x86_64.whl
- torch-2.1.2+cu118-cp310-cp310-win_amd64.whl
- torch-2.1.2+cu118-cp311-cp311-linux_x86_64.whl
- torch-2.1.2+cu118-cp311-cp311-win_amd64.whl
- torch-2.1.2+cu118-cp38-cp38-linux_x86_64.whl
- torch-2.1.2+cu118-cp38-cp38-win_amd64.whl
- torch-2.1.2+cu118-cp39-cp39-linux_x86_64.whl
- torch-2.1.2+cu118-cp39-cp39-win_amd64.whl
- torch-2.2.0+cu118-cp310-cp310-linux_x86_64.whl
- torch-2.2.0+cu118-cp310-cp310-win_amd64.whl
- torch-2.2.0+cu118-cp311-cp311-linux_x86_64.whl
- torch-2.2.0+cu118-cp311-cp311-win_amd64.whl
- torch-2.2.0+cu118-cp312-cp312-linux_x86_64.whl
- torch-2.2.0+cu118-cp312-cp312-win_amd64.whl
- torch-2.2.0+cu118-cp38-cp38-linux_x86_64.whl
- torch-2.2.0+cu118-cp38-cp38-win_amd64.whl
- torch-2.2.0+cu118-cp39-cp39-linux_x86_64.whl
- torch-2.2.0+cu118-cp39-cp39-win_amd64.whl
- torch-2.2.1+cu118-cp310-cp310-linux_x86_64.whl
- torch-2.2.1+cu118-cp310-cp310-win_amd64.whl
- torch-2.2.1+cu118-cp311-cp311-linux_x86_64.whl
- torch-2.2.1+cu118-cp311-cp311-win_amd64.whl
- torch-2.2.1+cu118-cp312-cp312-linux_x86_64.whl
- torch-2.2.1+cu118-cp312-cp312-win_amd64.whl
- torch-2.2.1+cu118-cp38-cp38-linux_x86_64.whl
- torch-2.2.1+cu118-cp38-cp38-win_amd64.whl
- torch-2.2.1+cu118-cp39-cp39-linux_x86_64.whl
- torch-2.2.1+cu118-cp39-cp39-win_amd64.whl
- torch-2.2.2+cu118-cp310-cp310-linux_x86_64.whl
- torch-2.2.2+cu118-cp310-cp310-win_amd64.whl
- torch-2.2.2+cu118-cp311-cp311-linux_x86_64.whl
- torch-2.2.2+cu118-cp311-cp311-win_amd64.whl
- torch-2.2.2+cu118-cp312-cp312-linux_x86_64.whl
- torch-2.2.2+cu118-cp312-cp312-win_amd64.whl
- torch-2.2.2+cu118-cp38-cp38-linux_x86_64.whl
- torch-2.2.2+cu118-cp38-cp38-win_amd64.whl
- torch-2.2.2+cu118-cp39-cp39-linux_x86_64.whl
- torch-2.2.2+cu118-cp39-cp39-win_amd64.whl
- torch-2.3.0+cu118-cp310-cp310-linux_x86_64.whl
- torch-2.3.0+cu118-cp310-cp310-win_amd64.whl
- torch-2.3.0+cu118-cp311-cp311-linux_x86_64.whl
- torch-2.3.0+cu118-cp311-cp311-win_amd64.whl
- torch-2.3.0+cu118-cp312-cp312-linux_x86_64.whl
- torch-2.3.0+cu118-cp312-cp312-win_amd64.whl
- torch-2.3.0+cu118-cp38-cp38-linux_x86_64.whl
- torch-2.3.0+cu118-cp38-cp38-win_amd64.whl
- torch-2.3.0+cu118-cp39-cp39-linux_x86_64.whl
- torch-2.3.0+cu118-cp39-cp39-win_amd64.whl
- torch-2.3.1+cu118-cp310-cp310-linux_x86_64.whl
- torch-2.3.1+cu118-cp310-cp310-win_amd64.whl
- torch-2.3.1+cu118-cp311-cp311-linux_x86_64.whl
- torch-2.3.1+cu118-cp311-cp311-win_amd64.whl
- torch-2.3.1+cu118-cp312-cp312-linux_x86_64.whl
- torch-2.3.1+cu118-cp312-cp312-win_amd64.whl
- torch-2.3.1+cu118-cp38-cp38-linux_x86_64.whl
- torch-2.3.1+cu118-cp38-cp38-win_amd64.whl
- torch-2.3.1+cu118-cp39-cp39-linux_x86_64.whl
- torch-2.3.1+cu118-cp39-cp39-win_amd64.whl
- torch-2.4.0+cu118-cp310-cp310-linux_x86_64.whl
- torch-2.4.0+cu118-cp310-cp310-win_amd64.whl
- torch-2.4.0+cu118-cp311-cp311-linux_x86_64.whl
- torch-2.4.0+cu118-cp311-cp311-win_amd64.whl
- torch-2.4.0+cu118-cp312-cp312-linux_x86_64.whl
- torch-2.4.0+cu118-cp312-cp312-win_amd64.whl
- torch-2.4.0+cu118-cp38-cp38-linux_x86_64.whl
- torch-2.4.0+cu118-cp38-cp38-win_amd64.whl
- torch-2.4.0+cu118-cp39-cp39-linux_x86_64.whl
- torch-2.4.0+cu118-cp39-cp39-win_amd64.whl
- torch-2.4.1+cu118-cp310-cp310-linux_x86_64.whl
- torch-2.4.1+cu118-cp310-cp310-win_amd64.whl
- torch-2.4.1+cu118-cp311-cp311-linux_x86_64.whl
- torch-2.4.1+cu118-cp311-cp311-win_amd64.whl
- torch-2.4.1+cu118-cp312-cp312-linux_x86_64.whl
- torch-2.4.1+cu118-cp312-cp312-win_amd64.whl
- torch-2.4.1+cu118-cp38-cp38-linux_x86_64.whl
- torch-2.4.1+cu118-cp38-cp38-win_amd64.whl
- torch-2.4.1+cu118-cp39-cp39-linux_x86_64.whl
- torch-2.4.1+cu118-cp39-cp39-win_amd64.whl
- torch-2.5.0+cu118-cp310-cp310-linux_x86_64.whl
- torch-2.5.0+cu118-cp310-cp310-win_amd64.whl
- torch-2.5.0+cu118-cp311-cp311-linux_x86_64.whl
- torch-2.5.0+cu118-cp311-cp311-win_amd64.whl
- torch-2.5.0+cu118-cp312-cp312-linux_x86_64.whl
- torch-2.5.0+cu118-cp312-cp312-win_amd64.whl
- torch-2.5.0+cu118-cp313-cp313-linux_x86_64.whl
- torch-2.5.0+cu118-cp39-cp39-linux_x86_64.whl
- torch-2.5.0+cu118-cp39-cp39-win_amd64.whl
- torch-2.5.1+cu118-cp310-cp310-linux_x86_64.whl
- torch-2.5.1+cu118-cp310-cp310-win_amd64.whl
- torch-2.5.1+cu118-cp311-cp311-linux_x86_64.whl
- torch-2.5.1+cu118-cp311-cp311-win_amd64.whl
- torch-2.5.1+cu118-cp312-cp312-linux_x86_64.whl
- torch-2.5.1+cu118-cp312-cp312-win_amd64.whl
- torch-2.5.1+cu118-cp313-cp313-linux_x86_64.whl
- torch-2.5.1+cu118-cp39-cp39-linux_x86_64.whl
- torch-2.5.1+cu118-cp39-cp39-win_amd64.whl
- torch-2.6.0+cu118-cp310-cp310-linux_x86_64.whl
- torch-2.6.0+cu118-cp310-cp310-win_amd64.whl
- torch-2.6.0+cu118-cp311-cp311-linux_x86_64.whl
- torch-2.6.0+cu118-cp311-cp311-win_amd64.whl
- torch-2.6.0+cu118-cp312-cp312-linux_x86_64.whl
- torch-2.6.0+cu118-cp312-cp312-win_amd64.whl
- torch-2.6.0+cu118-cp313-cp313-linux_x86_64.whl
- torch-2.6.0+cu118-cp313-cp313-win_amd64.whl
- torch-2.6.0+cu118-cp313-cp313t-linux_x86_64.whl
- torch-2.6.0+cu118-cp39-cp39-linux_x86_64.whl
- torch-2.6.0+cu118-cp39-cp39-win_amd64.whl
- torch-2.7.0+cu118-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.7.0+cu118-cp310-cp310-win_amd64.whl
- torch-2.7.0+cu118-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.7.0+cu118-cp311-cp311-win_amd64.whl
- torch-2.7.0+cu118-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.7.0+cu118-cp312-cp312-win_amd64.whl
- torch-2.7.0+cu118-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.7.0+cu118-cp313-cp313-win_amd64.whl
- torch-2.7.0+cu118-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.7.0+cu118-cp313-cp313t-win_amd64.whl
- torch-2.7.0+cu118-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.7.0+cu118-cp39-cp39-win_amd64.whl
- torch-2.7.1+cu118-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.7.1+cu118-cp310-cp310-win_amd64.whl
- torch-2.7.1+cu118-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.7.1+cu118-cp311-cp311-win_amd64.whl
- torch-2.7.1+cu118-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.7.1+cu118-cp312-cp312-win_amd64.whl
- torch-2.7.1+cu118-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.7.1+cu118-cp313-cp313-win_amd64.whl
- torch-2.7.1+cu118-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.7.1+cu118-cp313-cp313t-win_amd64.whl
- torch-2.7.1+cu118-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.7.1+cu118-cp39-cp39-win_amd64.whl
- torch-2.1.0+cu121-cp310-cp310-linux_x86_64.whl
- torch-2.1.0+cu121-cp310-cp310-win_amd64.whl
- torch-2.1.0+cu121-cp311-cp311-linux_x86_64.whl
- torch-2.1.0+cu121-cp311-cp311-win_amd64.whl
- torch-2.1.0+cu121-cp38-cp38-linux_x86_64.whl
- torch-2.1.0+cu121-cp38-cp38-win_amd64.whl
- torch-2.1.0+cu121-cp39-cp39-linux_x86_64.whl
- torch-2.1.0+cu121-cp39-cp39-win_amd64.whl
- torch-2.1.1+cu121-cp310-cp310-linux_x86_64.whl
- torch-2.1.1+cu121-cp310-cp310-win_amd64.whl
- torch-2.1.1+cu121-cp311-cp311-linux_x86_64.whl
- torch-2.1.1+cu121-cp311-cp311-win_amd64.whl
- torch-2.1.1+cu121-cp38-cp38-linux_x86_64.whl
- torch-2.1.1+cu121-cp38-cp38-win_amd64.whl
- torch-2.1.1+cu121-cp39-cp39-linux_x86_64.whl
- torch-2.1.1+cu121-cp39-cp39-win_amd64.whl
- torch-2.1.2+cu121-cp310-cp310-linux_x86_64.whl
- torch-2.1.2+cu121-cp310-cp310-win_amd64.whl
- torch-2.1.2+cu121-cp311-cp311-linux_x86_64.whl
- torch-2.1.2+cu121-cp311-cp311-win_amd64.whl
- torch-2.1.2+cu121-cp38-cp38-linux_x86_64.whl
- torch-2.1.2+cu121-cp38-cp38-win_amd64.whl
- torch-2.1.2+cu121-cp39-cp39-linux_x86_64.whl
- torch-2.1.2+cu121-cp39-cp39-win_amd64.whl
- torch-2.2.0+cu121-cp310-cp310-linux_x86_64.whl
- torch-2.2.0+cu121-cp310-cp310-win_amd64.whl
- torch-2.2.0+cu121-cp311-cp311-linux_x86_64.whl
- torch-2.2.0+cu121-cp311-cp311-win_amd64.whl
- torch-2.2.0+cu121-cp312-cp312-linux_x86_64.whl
- torch-2.2.0+cu121-cp312-cp312-win_amd64.whl
- torch-2.2.0+cu121-cp38-cp38-linux_x86_64.whl
- torch-2.2.0+cu121-cp38-cp38-win_amd64.whl
- torch-2.2.0+cu121-cp39-cp39-linux_x86_64.whl
- torch-2.2.0+cu121-cp39-cp39-win_amd64.whl
- torch-2.2.1+cu121-cp310-cp310-linux_x86_64.whl
- torch-2.2.1+cu121-cp310-cp310-win_amd64.whl
- torch-2.2.1+cu121-cp311-cp311-linux_x86_64.whl
- torch-2.2.1+cu121-cp311-cp311-win_amd64.whl
- torch-2.2.1+cu121-cp312-cp312-linux_x86_64.whl
- torch-2.2.1+cu121-cp312-cp312-win_amd64.whl
- torch-2.2.1+cu121-cp38-cp38-linux_x86_64.whl
- torch-2.2.1+cu121-cp38-cp38-win_amd64.whl
- torch-2.2.1+cu121-cp39-cp39-linux_x86_64.whl
- torch-2.2.1+cu121-cp39-cp39-win_amd64.whl
- torch-2.2.2+cu121-cp310-cp310-linux_x86_64.whl
- torch-2.2.2+cu121-cp310-cp310-win_amd64.whl
- torch-2.2.2+cu121-cp311-cp311-linux_x86_64.whl
- torch-2.2.2+cu121-cp311-cp311-win_amd64.whl
- torch-2.2.2+cu121-cp312-cp312-linux_x86_64.whl
- torch-2.2.2+cu121-cp312-cp312-win_amd64.whl
- torch-2.2.2+cu121-cp38-cp38-linux_x86_64.whl
- torch-2.2.2+cu121-cp38-cp38-win_amd64.whl
- torch-2.2.2+cu121-cp39-cp39-linux_x86_64.whl
- torch-2.2.2+cu121-cp39-cp39-win_amd64.whl
- torch-2.3.0+cu121-cp310-cp310-linux_x86_64.whl
- torch-2.3.0+cu121-cp310-cp310-win_amd64.whl
- torch-2.3.0+cu121-cp311-cp311-linux_x86_64.whl
- torch-2.3.0+cu121-cp311-cp311-win_amd64.whl
- torch-2.3.0+cu121-cp312-cp312-linux_x86_64.whl
- torch-2.3.0+cu121-cp312-cp312-win_amd64.whl
- torch-2.3.0+cu121-cp38-cp38-linux_x86_64.whl
- torch-2.3.0+cu121-cp38-cp38-win_amd64.whl
- torch-2.3.0+cu121-cp39-cp39-linux_x86_64.whl
- torch-2.3.0+cu121-cp39-cp39-win_amd64.whl
- torch-2.3.1+cu121-cp310-cp310-linux_x86_64.whl
- torch-2.3.1+cu121-cp310-cp310-win_amd64.whl
- torch-2.3.1+cu121-cp311-cp311-linux_x86_64.whl
- torch-2.3.1+cu121-cp311-cp311-win_amd64.whl
- torch-2.3.1+cu121-cp312-cp312-linux_x86_64.whl
- torch-2.3.1+cu121-cp312-cp312-win_amd64.whl
- torch-2.3.1+cu121-cp38-cp38-linux_x86_64.whl
- torch-2.3.1+cu121-cp38-cp38-win_amd64.whl
- torch-2.3.1+cu121-cp39-cp39-linux_x86_64.whl
- torch-2.3.1+cu121-cp39-cp39-win_amd64.whl
- torch-2.4.0+cu121-cp310-cp310-linux_x86_64.whl
- torch-2.4.0+cu121-cp310-cp310-win_amd64.whl
- torch-2.4.0+cu121-cp311-cp311-linux_x86_64.whl
- torch-2.4.0+cu121-cp311-cp311-win_amd64.whl
- torch-2.4.0+cu121-cp312-cp312-linux_x86_64.whl
- torch-2.4.0+cu121-cp312-cp312-win_amd64.whl
- torch-2.4.0+cu121-cp38-cp38-linux_x86_64.whl
- torch-2.4.0+cu121-cp38-cp38-win_amd64.whl
- torch-2.4.0+cu121-cp39-cp39-linux_x86_64.whl
- torch-2.4.0+cu121-cp39-cp39-win_amd64.whl
- torch-2.4.1+cu121-cp310-cp310-linux_x86_64.whl
- torch-2.4.1+cu121-cp310-cp310-win_amd64.whl
- torch-2.4.1+cu121-cp311-cp311-linux_x86_64.whl
- torch-2.4.1+cu121-cp311-cp311-win_amd64.whl
- torch-2.4.1+cu121-cp312-cp312-linux_x86_64.whl
- torch-2.4.1+cu121-cp312-cp312-win_amd64.whl
- torch-2.4.1+cu121-cp38-cp38-linux_x86_64.whl
- torch-2.4.1+cu121-cp38-cp38-win_amd64.whl
- torch-2.4.1+cu121-cp39-cp39-linux_x86_64.whl
- torch-2.4.1+cu121-cp39-cp39-win_amd64.whl
- torch-2.5.0+cu121-cp310-cp310-linux_x86_64.whl
- torch-2.5.0+cu121-cp310-cp310-win_amd64.whl
- torch-2.5.0+cu121-cp311-cp311-linux_x86_64.whl
- torch-2.5.0+cu121-cp311-cp311-win_amd64.whl
- torch-2.5.0+cu121-cp312-cp312-linux_x86_64.whl
- torch-2.5.0+cu121-cp312-cp312-win_amd64.whl
- torch-2.5.0+cu121-cp313-cp313-linux_x86_64.whl
- torch-2.5.0+cu121-cp39-cp39-linux_x86_64.whl
- torch-2.5.0+cu121-cp39-cp39-win_amd64.whl
- torch-2.5.1+cu121-cp310-cp310-linux_x86_64.whl
- torch-2.5.1+cu121-cp310-cp310-win_amd64.whl
- torch-2.5.1+cu121-cp311-cp311-linux_x86_64.whl
- torch-2.5.1+cu121-cp311-cp311-win_amd64.whl
- torch-2.5.1+cu121-cp312-cp312-linux_x86_64.whl
- torch-2.5.1+cu121-cp312-cp312-win_amd64.whl
- torch-2.5.1+cu121-cp313-cp313-linux_x86_64.whl
- torch-2.5.1+cu121-cp39-cp39-linux_x86_64.whl
- torch-2.5.1+cu121-cp39-cp39-win_amd64.whl
- torch-2.4.0+cu124-cp310-cp310-linux_x86_64.whl
- torch-2.4.0+cu124-cp310-cp310-win_amd64.whl
- torch-2.4.0+cu124-cp311-cp311-linux_x86_64.whl
- torch-2.4.0+cu124-cp311-cp311-win_amd64.whl
- torch-2.4.0+cu124-cp312-cp312-linux_x86_64.whl
- torch-2.4.0+cu124-cp312-cp312-win_amd64.whl
- torch-2.4.0+cu124-cp38-cp38-linux_x86_64.whl
- torch-2.4.0+cu124-cp38-cp38-win_amd64.whl
- torch-2.4.0+cu124-cp39-cp39-linux_x86_64.whl
- torch-2.4.0+cu124-cp39-cp39-win_amd64.whl
- torch-2.4.0-cp310-cp310-linux_aarch64.whl
- torch-2.4.0-cp311-cp311-linux_aarch64.whl
- torch-2.4.0-cp312-cp312-linux_aarch64.whl
- torch-2.4.0-cp38-cp38-linux_aarch64.whl
- torch-2.4.0-cp39-cp39-linux_aarch64.whl
- torch-2.4.1+cu124-cp310-cp310-linux_x86_64.whl
- torch-2.4.1+cu124-cp310-cp310-win_amd64.whl
- torch-2.4.1+cu124-cp311-cp311-linux_x86_64.whl
- torch-2.4.1+cu124-cp311-cp311-win_amd64.whl
- torch-2.4.1+cu124-cp312-cp312-linux_x86_64.whl
- torch-2.4.1+cu124-cp312-cp312-win_amd64.whl
- torch-2.4.1+cu124-cp38-cp38-linux_x86_64.whl
- torch-2.4.1+cu124-cp38-cp38-win_amd64.whl
- torch-2.4.1+cu124-cp39-cp39-linux_x86_64.whl
- torch-2.4.1+cu124-cp39-cp39-win_amd64.whl
- torch-2.4.1-cp310-cp310-linux_aarch64.whl
- torch-2.4.1-cp311-cp311-linux_aarch64.whl
- torch-2.4.1-cp312-cp312-linux_aarch64.whl
- torch-2.4.1-cp38-cp38-linux_aarch64.whl
- torch-2.4.1-cp39-cp39-linux_aarch64.whl
- torch-2.5.0+cu124-cp310-cp310-linux_x86_64.whl
- torch-2.5.0+cu124-cp310-cp310-win_amd64.whl
- torch-2.5.0+cu124-cp311-cp311-linux_x86_64.whl
- torch-2.5.0+cu124-cp311-cp311-win_amd64.whl
- torch-2.5.0+cu124-cp312-cp312-linux_x86_64.whl
- torch-2.5.0+cu124-cp312-cp312-win_amd64.whl
- torch-2.5.0+cu124-cp313-cp313-linux_x86_64.whl
- torch-2.5.0+cu124-cp39-cp39-linux_x86_64.whl
- torch-2.5.0+cu124-cp39-cp39-win_amd64.whl
- torch-2.5.0-cp310-cp310-linux_aarch64.whl
- torch-2.5.0-cp311-cp311-linux_aarch64.whl
- torch-2.5.0-cp312-cp312-linux_aarch64.whl
- torch-2.5.0-cp39-cp39-linux_aarch64.whl
- torch-2.5.1+cu124-cp310-cp310-linux_x86_64.whl
- torch-2.5.1+cu124-cp310-cp310-win_amd64.whl
- torch-2.5.1+cu124-cp311-cp311-linux_x86_64.whl
- torch-2.5.1+cu124-cp311-cp311-win_amd64.whl
- torch-2.5.1+cu124-cp312-cp312-linux_x86_64.whl
- torch-2.5.1+cu124-cp312-cp312-win_amd64.whl
- torch-2.5.1+cu124-cp313-cp313-linux_x86_64.whl
- torch-2.5.1+cu124-cp39-cp39-linux_x86_64.whl
- torch-2.5.1+cu124-cp39-cp39-win_amd64.whl
- torch-2.5.1-cp310-cp310-linux_aarch64.whl
- torch-2.5.1-cp311-cp311-linux_aarch64.whl
- torch-2.5.1-cp312-cp312-linux_aarch64.whl
- torch-2.5.1-cp39-cp39-linux_aarch64.whl
- torch-2.6.0+cu124-cp310-cp310-linux_x86_64.whl
- torch-2.6.0+cu124-cp310-cp310-win_amd64.whl
- torch-2.6.0+cu124-cp311-cp311-linux_x86_64.whl
- torch-2.6.0+cu124-cp311-cp311-win_amd64.whl
- torch-2.6.0+cu124-cp312-cp312-linux_x86_64.whl
- torch-2.6.0+cu124-cp312-cp312-win_amd64.whl
- torch-2.6.0+cu124-cp313-cp313-linux_x86_64.whl
- torch-2.6.0+cu124-cp313-cp313-win_amd64.whl
- torch-2.6.0+cu124-cp313-cp313t-linux_x86_64.whl
- torch-2.6.0+cu124-cp39-cp39-linux_x86_64.whl
- torch-2.6.0+cu124-cp39-cp39-win_amd64.whl
- torch-2.10.0+cu126-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu126-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu126-cp310-cp310-win_amd64.whl
- torch-2.10.0+cu126-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu126-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu126-cp311-cp311-win_amd64.whl
- torch-2.10.0+cu126-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu126-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu126-cp312-cp312-win_amd64.whl
- torch-2.10.0+cu126-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu126-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu126-cp313-cp313-win_amd64.whl
- torch-2.10.0+cu126-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu126-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu126-cp313-cp313t-win_amd64.whl
- torch-2.10.0+cu126-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu126-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu126-cp314-cp314-win_amd64.whl
- torch-2.10.0+cu126-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu126-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu126-cp314-cp314t-win_amd64.whl
- torch-2.11.0+cu126-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu126-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu126-cp310-cp310-win_amd64.whl
- torch-2.11.0+cu126-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu126-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu126-cp311-cp311-win_amd64.whl
- torch-2.11.0+cu126-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu126-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu126-cp312-cp312-win_amd64.whl
- torch-2.11.0+cu126-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu126-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu126-cp313-cp313-win_amd64.whl
- torch-2.11.0+cu126-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu126-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu126-cp313-cp313t-win_amd64.whl
- torch-2.11.0+cu126-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu126-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu126-cp314-cp314-win_amd64.whl
- torch-2.11.0+cu126-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu126-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu126-cp314-cp314t-win_amd64.whl
- torch-2.6.0+cu126-cp310-cp310-linux_aarch64.whl
- torch-2.6.0+cu126-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.6.0+cu126-cp310-cp310-win_amd64.whl
- torch-2.6.0+cu126-cp311-cp311-linux_aarch64.whl
- torch-2.6.0+cu126-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.6.0+cu126-cp311-cp311-win_amd64.whl
- torch-2.6.0+cu126-cp312-cp312-linux_aarch64.whl
- torch-2.6.0+cu126-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.6.0+cu126-cp312-cp312-win_amd64.whl
- torch-2.6.0+cu126-cp313-cp313-linux_aarch64.whl
- torch-2.6.0+cu126-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.6.0+cu126-cp313-cp313-win_amd64.whl
- torch-2.6.0+cu126-cp313-cp313t-linux_aarch64.whl
- torch-2.6.0+cu126-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.6.0+cu126-cp39-cp39-linux_aarch64.whl
- torch-2.6.0+cu126-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.6.0+cu126-cp39-cp39-win_amd64.whl
- torch-2.7.0+cu126-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.7.0+cu126-cp310-cp310-win_amd64.whl
- torch-2.7.0+cu126-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.7.0+cu126-cp311-cp311-win_amd64.whl
- torch-2.7.0+cu126-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.7.0+cu126-cp312-cp312-win_amd64.whl
- torch-2.7.0+cu126-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.7.0+cu126-cp313-cp313-win_amd64.whl
- torch-2.7.0+cu126-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.7.0+cu126-cp313-cp313t-win_amd64.whl
- torch-2.7.0+cu126-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.7.0+cu126-cp39-cp39-win_amd64.whl
- torch-2.7.1+cu126-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.7.1+cu126-cp310-cp310-win_amd64.whl
- torch-2.7.1+cu126-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.7.1+cu126-cp311-cp311-win_amd64.whl
- torch-2.7.1+cu126-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.7.1+cu126-cp312-cp312-win_amd64.whl
- torch-2.7.1+cu126-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.7.1+cu126-cp313-cp313-win_amd64.whl
- torch-2.7.1+cu126-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.7.1+cu126-cp313-cp313t-win_amd64.whl
- torch-2.7.1+cu126-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.7.1+cu126-cp39-cp39-win_amd64.whl
- torch-2.8.0+cu126-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu126-cp310-cp310-win_amd64.whl
- torch-2.8.0+cu126-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu126-cp311-cp311-win_amd64.whl
- torch-2.8.0+cu126-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu126-cp312-cp312-win_amd64.whl
- torch-2.8.0+cu126-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu126-cp313-cp313-win_amd64.whl
- torch-2.8.0+cu126-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu126-cp313-cp313t-win_amd64.whl
- torch-2.8.0+cu126-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu126-cp39-cp39-win_amd64.whl
- torch-2.9.0+cu126-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu126-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu126-cp310-cp310-win_amd64.whl
- torch-2.9.0+cu126-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu126-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu126-cp311-cp311-win_amd64.whl
- torch-2.9.0+cu126-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu126-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu126-cp312-cp312-win_amd64.whl
- torch-2.9.0+cu126-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu126-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu126-cp313-cp313-win_amd64.whl
- torch-2.9.0+cu126-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu126-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu126-cp313-cp313t-win_amd64.whl
- torch-2.9.0+cu126-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu126-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu126-cp314-cp314-win_amd64.whl
- torch-2.9.0+cu126-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu126-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu126-cp314-cp314t-win_amd64.whl
- torch-2.9.1+cu126-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu126-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu126-cp310-cp310-win_amd64.whl
- torch-2.9.1+cu126-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu126-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu126-cp311-cp311-win_amd64.whl
- torch-2.9.1+cu126-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu126-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu126-cp312-cp312-win_amd64.whl
- torch-2.9.1+cu126-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu126-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu126-cp313-cp313-win_amd64.whl
- torch-2.9.1+cu126-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu126-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu126-cp313-cp313t-win_amd64.whl
- torch-2.9.1+cu126-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu126-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu126-cp314-cp314-win_amd64.whl
- torch-2.9.1+cu126-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu126-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu126-cp314-cp314t-win_amd64.whl
- torch-2.10.0+cu128-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu128-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu128-cp310-cp310-win_amd64.whl
- torch-2.10.0+cu128-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu128-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu128-cp311-cp311-win_amd64.whl
- torch-2.10.0+cu128-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu128-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu128-cp312-cp312-win_amd64.whl
- torch-2.10.0+cu128-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu128-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu128-cp313-cp313-win_amd64.whl
- torch-2.10.0+cu128-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu128-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu128-cp313-cp313t-win_amd64.whl
- torch-2.10.0+cu128-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu128-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu128-cp314-cp314-win_amd64.whl
- torch-2.10.0+cu128-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu128-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu128-cp314-cp314t-win_amd64.whl
- torch-2.11.0+cu128-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu128-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu128-cp310-cp310-win_amd64.whl
- torch-2.11.0+cu128-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu128-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu128-cp311-cp311-win_amd64.whl
- torch-2.11.0+cu128-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu128-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu128-cp312-cp312-win_amd64.whl
- torch-2.11.0+cu128-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu128-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu128-cp313-cp313-win_amd64.whl
- torch-2.11.0+cu128-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu128-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu128-cp313-cp313t-win_amd64.whl
- torch-2.11.0+cu128-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu128-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu128-cp314-cp314-win_amd64.whl
- torch-2.11.0+cu128-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu128-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu128-cp314-cp314t-win_amd64.whl
- torch-2.7.0+cu128-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.7.0+cu128-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.7.0+cu128-cp310-cp310-win_amd64.whl
- torch-2.7.0+cu128-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.7.0+cu128-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.7.0+cu128-cp311-cp311-win_amd64.whl
- torch-2.7.0+cu128-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.7.0+cu128-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.7.0+cu128-cp312-cp312-win_amd64.whl
- torch-2.7.0+cu128-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.7.0+cu128-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.7.0+cu128-cp313-cp313-win_amd64.whl
- torch-2.7.0+cu128-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.7.0+cu128-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.7.0+cu128-cp313-cp313t-win_amd64.whl
- torch-2.7.0+cu128-cp39-cp39-manylinux_2_28_aarch64.whl
- torch-2.7.0+cu128-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.7.0+cu128-cp39-cp39-win_amd64.whl
- torch-2.7.1+cu128-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.7.1+cu128-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.7.1+cu128-cp310-cp310-win_amd64.whl
- torch-2.7.1+cu128-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.7.1+cu128-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.7.1+cu128-cp311-cp311-win_amd64.whl
- torch-2.7.1+cu128-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.7.1+cu128-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.7.1+cu128-cp312-cp312-win_amd64.whl
- torch-2.7.1+cu128-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.7.1+cu128-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.7.1+cu128-cp313-cp313-win_amd64.whl
- torch-2.7.1+cu128-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.7.1+cu128-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.7.1+cu128-cp313-cp313t-win_amd64.whl
- torch-2.7.1+cu128-cp39-cp39-manylinux_2_28_aarch64.whl
- torch-2.7.1+cu128-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.7.1+cu128-cp39-cp39-win_amd64.whl
- torch-2.8.0+cu128-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu128-cp310-cp310-win_amd64.whl
- torch-2.8.0+cu128-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu128-cp311-cp311-win_amd64.whl
- torch-2.8.0+cu128-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu128-cp312-cp312-win_amd64.whl
- torch-2.8.0+cu128-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu128-cp313-cp313-win_amd64.whl
- torch-2.8.0+cu128-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu128-cp313-cp313t-win_amd64.whl
- torch-2.8.0+cu128-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu128-cp39-cp39-win_amd64.whl
- torch-2.9.0+cu128-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu128-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu128-cp310-cp310-win_amd64.whl
- torch-2.9.0+cu128-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu128-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu128-cp311-cp311-win_amd64.whl
- torch-2.9.0+cu128-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu128-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu128-cp312-cp312-win_amd64.whl
- torch-2.9.0+cu128-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu128-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu128-cp313-cp313-win_amd64.whl
- torch-2.9.0+cu128-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu128-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu128-cp313-cp313t-win_amd64.whl
- torch-2.9.0+cu128-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu128-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu128-cp314-cp314-win_amd64.whl
- torch-2.9.0+cu128-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu128-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu128-cp314-cp314t-win_amd64.whl
- torch-2.9.1+cu128-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu128-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu128-cp310-cp310-win_amd64.whl
- torch-2.9.1+cu128-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu128-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu128-cp311-cp311-win_amd64.whl
- torch-2.9.1+cu128-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu128-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu128-cp312-cp312-win_amd64.whl
- torch-2.9.1+cu128-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu128-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu128-cp313-cp313-win_amd64.whl
- torch-2.9.1+cu128-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu128-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu128-cp313-cp313t-win_amd64.whl
- torch-2.9.1+cu128-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu128-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu128-cp314-cp314-win_amd64.whl
- torch-2.9.1+cu128-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu128-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu128-cp314-cp314t-win_amd64.whl
- torch-2.10.0+cu129-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu129-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu129-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu129-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu129-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu129-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu129-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu129-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu129-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu129-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu129-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu129-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu129-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu129-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu129-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu129-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu129-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu129-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu129-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu129-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu129-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu129-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu129-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu129-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu129-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu129-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu129-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu129-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu129-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.8.0+cu129-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu129-cp310-cp310-win_amd64.whl
- torch-2.8.0+cu129-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.8.0+cu129-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu129-cp311-cp311-win_amd64.whl
- torch-2.8.0+cu129-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.8.0+cu129-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu129-cp312-cp312-win_amd64.whl
- torch-2.8.0+cu129-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.8.0+cu129-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu129-cp313-cp313-win_amd64.whl
- torch-2.8.0+cu129-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.8.0+cu129-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu129-cp313-cp313t-win_amd64.whl
- torch-2.8.0+cu129-cp39-cp39-manylinux_2_28_aarch64.whl
- torch-2.8.0+cu129-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.8.0+cu129-cp39-cp39-win_amd64.whl
- torch-2.9.0+cu129-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu129-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu129-cp310-cp310-win_amd64.whl
- torch-2.9.0+cu129-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu129-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu129-cp311-cp311-win_amd64.whl
- torch-2.9.0+cu129-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu129-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu129-cp312-cp312-win_amd64.whl
- torch-2.9.0+cu129-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu129-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu129-cp313-cp313-win_amd64.whl
- torch-2.9.0+cu129-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu129-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu129-cp313-cp313t-win_amd64.whl
- torch-2.9.0+cu129-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu129-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu129-cp314-cp314-win_amd64.whl
- torch-2.9.0+cu129-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu129-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu129-cp314-cp314t-win_amd64.whl
- torch-2.9.1+cu129-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu129-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu129-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu129-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu129-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu129-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu129-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu129-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu129-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu129-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu129-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu129-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu129-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu129-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu130-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu130-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu130-cp310-cp310-win_amd64.whl
- torch-2.10.0+cu130-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu130-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu130-cp311-cp311-win_amd64.whl
- torch-2.10.0+cu130-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu130-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu130-cp312-cp312-win_amd64.whl
- torch-2.10.0+cu130-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu130-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu130-cp313-cp313-win_amd64.whl
- torch-2.10.0+cu130-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu130-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu130-cp313-cp313t-win_amd64.whl
- torch-2.10.0+cu130-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu130-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu130-cp314-cp314-win_amd64.whl
- torch-2.10.0+cu130-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.10.0+cu130-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.10.0+cu130-cp314-cp314t-win_amd64.whl
- torch-2.11.0+cu130-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu130-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu130-cp310-cp310-win_amd64.whl
- torch-2.11.0+cu130-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu130-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu130-cp311-cp311-win_amd64.whl
- torch-2.11.0+cu130-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu130-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu130-cp312-cp312-win_amd64.whl
- torch-2.11.0+cu130-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu130-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu130-cp313-cp313-win_amd64.whl
- torch-2.11.0+cu130-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu130-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu130-cp313-cp313t-win_amd64.whl
- torch-2.11.0+cu130-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu130-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu130-cp314-cp314-win_amd64.whl
- torch-2.11.0+cu130-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.11.0+cu130-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.11.0+cu130-cp314-cp314t-win_amd64.whl
- torch-2.9.0+cu130-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu130-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu130-cp310-cp310-win_amd64.whl
- torch-2.9.0+cu130-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu130-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu130-cp311-cp311-win_amd64.whl
- torch-2.9.0+cu130-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu130-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu130-cp312-cp312-win_amd64.whl
- torch-2.9.0+cu130-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu130-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu130-cp313-cp313-win_amd64.whl
- torch-2.9.0+cu130-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu130-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu130-cp313-cp313t-win_amd64.whl
- torch-2.9.0+cu130-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu130-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu130-cp314-cp314-win_amd64.whl
- torch-2.9.0+cu130-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.9.0+cu130-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.9.0+cu130-cp314-cp314t-win_amd64.whl
- torch-2.9.1+cu130-cp310-cp310-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu130-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu130-cp310-cp310-win_amd64.whl
- torch-2.9.1+cu130-cp311-cp311-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu130-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu130-cp311-cp311-win_amd64.whl
- torch-2.9.1+cu130-cp312-cp312-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu130-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu130-cp312-cp312-win_amd64.whl
- torch-2.9.1+cu130-cp313-cp313-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu130-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu130-cp313-cp313-win_amd64.whl
- torch-2.9.1+cu130-cp313-cp313t-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu130-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu130-cp313-cp313t-win_amd64.whl
- torch-2.9.1+cu130-cp314-cp314-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu130-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu130-cp314-cp314-win_amd64.whl
- torch-2.9.1+cu130-cp314-cp314t-manylinux_2_28_aarch64.whl
- torch-2.9.1+cu130-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.9.1+cu130-cp314-cp314t-win_amd64.whl
- torch-0.1.10.post1-cp27-none-linux_x86_64.whl
- torch-0.1.10.post1-cp35-cp35m-linux_x86_64.whl
- torch-0.1.10.post1-cp36-cp36m-linux_x86_64.whl
- torch-0.1.10.post2-cp27-none-linux_x86_64.whl
- torch-0.1.10.post2-cp35-cp35m-linux_x86_64.whl
- torch-0.1.10.post2-cp36-cp36m-linux_x86_64.whl
- torch-0.1.11.post4-cp27-none-linux_x86_64.whl
- torch-0.1.11.post4-cp35-cp35m-linux_x86_64.whl
- torch-0.1.11.post4-cp36-cp36m-linux_x86_64.whl
- torch-0.1.11.post5-cp27-none-linux_x86_64.whl
- torch-0.1.11.post5-cp35-cp35m-linux_x86_64.whl
- torch-0.1.11.post5-cp36-cp36m-linux_x86_64.whl
- torch-0.1.12.post1-cp27-none-linux_x86_64.whl
- torch-0.1.12.post1-cp35-cp35m-linux_x86_64.whl
- torch-0.1.12.post1-cp36-cp36m-linux_x86_64.whl
- torch-0.1.12.post2-cp27-none-linux_x86_64.whl
- torch-0.1.12.post2-cp35-cp35m-linux_x86_64.whl
- torch-0.1.12.post2-cp36-cp36m-linux_x86_64.whl
- torch-0.1.6.post20-cp27-cp27mu-linux_x86_64.whl
- torch-0.1.6.post20-cp35-cp35m-linux_x86_64.whl
- torch-0.1.6.post22-cp27-none-linux_x86_64.whl
- torch-0.1.6.post22-cp35-cp35m-linux_x86_64.whl
- torch-0.1.7.post2-cp27-none-linux_x86_64.whl
- torch-0.1.7.post2-cp35-cp35m-linux_x86_64.whl
- torch-0.1.7.post2-cp36-cp36m-linux_x86_64.whl
- torch-0.1.8.post1-cp27-none-linux_x86_64.whl
- torch-0.1.8.post1-cp35-cp35m-linux_x86_64.whl
- torch-0.1.8.post1-cp36-cp36m-linux_x86_64.whl
- torch-0.1.9.post1-cp27-none-linux_x86_64.whl
- torch-0.1.9.post1-cp35-cp35m-linux_x86_64.whl
- torch-0.1.9.post1-cp36-cp36m-linux_x86_64.whl
- torch-0.1.9.post2-cp27-none-linux_x86_64.whl
- torch-0.1.9.post2-cp35-cp35m-linux_x86_64.whl
- torch-0.1.9.post2-cp36-cp36m-linux_x86_64.whl
- torch-0.2.0.post1-cp27-cp27m-manylinux1_x86_64.whl
- torch-0.2.0.post1-cp27-cp27mu-manylinux1_x86_64.whl
- torch-0.2.0.post1-cp35-cp35m-manylinux1_x86_64.whl
- torch-0.2.0.post1-cp36-cp36m-manylinux1_x86_64.whl
- torch-0.2.0.post2-cp27-cp27m-manylinux1_x86_64.whl
- torch-0.2.0.post2-cp27-cp27mu-manylinux1_x86_64.whl
- torch-0.2.0.post2-cp35-cp35m-manylinux1_x86_64.whl
- torch-0.2.0.post2-cp36-cp36m-manylinux1_x86_64.whl
- torch-0.2.0.post3-cp27-cp27m-manylinux1_x86_64.whl
- torch-0.2.0.post3-cp27-cp27mu-manylinux1_x86_64.whl
- torch-0.2.0.post3-cp35-cp35m-manylinux1_x86_64.whl
- torch-0.2.0.post3-cp36-cp36m-manylinux1_x86_64.whl
- torch-0.3.0-cp27-cp27m-linux_x86_64.whl
- torch-0.3.0-cp27-cp27mu-linux_x86_64.whl
- torch-0.3.0-cp35-cp35m-linux_x86_64.whl
- torch-0.3.0-cp36-cp36m-linux_x86_64.whl
- torch-0.3.0.post2-cp27-cp27m-linux_x86_64.whl
- torch-0.3.0.post2-cp27-cp27mu-linux_x86_64.whl
- torch-0.3.0.post2-cp35-cp35m-linux_x86_64.whl
- torch-0.3.0.post2-cp36-cp36m-linux_x86_64.whl
- torch-0.3.0.post3-cp27-cp27m-linux_x86_64.whl
- torch-0.3.0.post3-cp27-cp27mu-linux_x86_64.whl
- torch-0.3.0.post3-cp35-cp35m-linux_x86_64.whl
- torch-0.3.0.post3-cp36-cp36m-linux_x86_64.whl
- torch-0.3.0.post4-cp27-cp27m-linux_x86_64.whl
- torch-0.3.0.post4-cp27-cp27mu-linux_x86_64.whl
- torch-0.3.0.post4-cp35-cp35m-linux_x86_64.whl
- torch-0.3.0.post4-cp36-cp36m-linux_x86_64.whl
- torch-0.1.10.post1-cp27-none-linux_x86_64.whl
- torch-0.1.10.post1-cp35-cp35m-linux_x86_64.whl
- torch-0.1.10.post1-cp36-cp36m-linux_x86_64.whl
- torch-0.1.10.post2-cp27-none-linux_x86_64.whl
- torch-0.1.10.post2-cp35-cp35m-linux_x86_64.whl
- torch-0.1.10.post2-cp36-cp36m-linux_x86_64.whl
- torch-0.1.11.post4-cp27-none-linux_x86_64.whl
- torch-0.1.11.post4-cp35-cp35m-linux_x86_64.whl
- torch-0.1.11.post4-cp36-cp36m-linux_x86_64.whl
- torch-0.1.11.post5-cp27-none-linux_x86_64.whl
- torch-0.1.11.post5-cp35-cp35m-linux_x86_64.whl
- torch-0.1.11.post5-cp36-cp36m-linux_x86_64.whl
- torch-0.1.12.post1-cp27-none-linux_x86_64.whl
- torch-0.1.12.post1-cp35-cp35m-linux_x86_64.whl
- torch-0.1.12.post1-cp36-cp36m-linux_x86_64.whl
- torch-0.1.12.post2-cp27-none-linux_x86_64.whl
- torch-0.1.12.post2-cp35-cp35m-linux_x86_64.whl
- torch-0.1.12.post2-cp36-cp36m-linux_x86_64.whl
- torch-0.1.6.post20-cp27-cp27mu-linux_x86_64.whl
- torch-0.1.6.post20-cp35-cp35m-linux_x86_64.whl
- torch-0.1.6.post22-cp27-none-linux_x86_64.whl
- torch-0.1.6.post22-cp35-cp35m-linux_x86_64.whl
- torch-0.1.7.post2-cp27-none-linux_x86_64.whl
- torch-0.1.7.post2-cp35-cp35m-linux_x86_64.whl
- torch-0.1.7.post2-cp36-cp36m-linux_x86_64.whl
- torch-0.1.8.post1-cp27-none-linux_x86_64.whl
- torch-0.1.8.post1-cp35-cp35m-linux_x86_64.whl
- torch-0.1.8.post1-cp36-cp36m-linux_x86_64.whl
- torch-0.1.9.post1-cp27-none-linux_x86_64.whl
- torch-0.1.9.post1-cp35-cp35m-linux_x86_64.whl
- torch-0.1.9.post1-cp36-cp36m-linux_x86_64.whl
- torch-0.1.9.post2-cp27-none-linux_x86_64.whl
- torch-0.1.9.post2-cp35-cp35m-linux_x86_64.whl
- torch-0.1.9.post2-cp36-cp36m-linux_x86_64.whl
- torch-0.2.0.post2-cp27-cp27m-manylinux1_x86_64.whl
- torch-0.2.0.post2-cp27-cp27mu-manylinux1_x86_64.whl
- torch-0.2.0.post2-cp35-cp35m-manylinux1_x86_64.whl
- torch-0.2.0.post2-cp36-cp36m-manylinux1_x86_64.whl
- torch-0.2.0.post3-cp27-cp27m-manylinux1_x86_64.whl
- torch-0.2.0.post3-cp27-cp27mu-manylinux1_x86_64.whl
- torch-0.2.0.post3-cp35-cp35m-manylinux1_x86_64.whl
- torch-0.2.0.post3-cp36-cp36m-manylinux1_x86_64.whl
- torch-0.3.0-cp27-cp27m-linux_x86_64.whl
- torch-0.3.0-cp27-cp27mu-linux_x86_64.whl
- torch-0.3.0-cp35-cp35m-linux_x86_64.whl
- torch-0.3.0-cp36-cp36m-linux_x86_64.whl
- torch-0.3.0.post2-cp27-cp27m-linux_x86_64.whl
- torch-0.3.0.post2-cp27-cp27mu-linux_x86_64.whl
- torch-0.3.0.post2-cp35-cp35m-linux_x86_64.whl
- torch-0.3.0.post2-cp36-cp36m-linux_x86_64.whl
- torch-0.3.0.post3-cp27-cp27m-linux_x86_64.whl
- torch-0.3.0.post3-cp27-cp27mu-linux_x86_64.whl
- torch-0.3.0.post3-cp35-cp35m-linux_x86_64.whl
- torch-0.3.0.post3-cp36-cp36m-linux_x86_64.whl
- torch-0.3.0.post4-cp27-cp27m-linux_x86_64.whl
- torch-0.3.0.post4-cp27-cp27mu-linux_x86_64.whl
- torch-0.3.0.post4-cp35-cp35m-linux_x86_64.whl
- torch-0.3.0.post4-cp36-cp36m-linux_x86_64.whl
- torch-0.3.1-cp27-cp27m-linux_x86_64.whl
- torch-0.3.1-cp27-cp27mu-linux_x86_64.whl
- torch-0.3.1-cp35-cp35m-linux_x86_64.whl
- torch-0.3.1-cp36-cp36m-linux_x86_64.whl
- torch-0.4.0-cp27-cp27m-linux_x86_64.whl
- torch-0.4.0-cp27-cp27mu-linux_x86_64.whl
- torch-0.4.0-cp35-cp35m-linux_x86_64.whl
- torch-0.4.0-cp35-cp35m-win_amd64.whl
- torch-0.4.0-cp36-cp36m-linux_x86_64.whl
- torch-0.4.0-cp36-cp36m-win_amd64.whl
- torch-0.4.1-cp27-cp27m-linux_x86_64.whl
- torch-0.4.1-cp27-cp27mu-linux_x86_64.whl
- torch-0.4.1-cp35-cp35m-linux_x86_64.whl
- torch-0.4.1-cp35-cp35m-win_amd64.whl
- torch-0.4.1-cp36-cp36m-linux_x86_64.whl
- torch-0.4.1-cp36-cp36m-win_amd64.whl
- torch-0.4.1-cp37-cp37m-linux_x86_64.whl
- torch-0.4.1-cp37-cp37m-win_amd64.whl
- torch-0.4.1.post2-cp37-cp37m-linux_x86_64.whl
- torch-1.0.0-cp27-cp27m-linux_x86_64.whl
- torch-1.0.0-cp27-cp27mu-linux_x86_64.whl
- torch-1.0.0-cp35-cp35m-linux_x86_64.whl
- torch-1.0.0-cp35-cp35m-win_amd64.whl
- torch-1.0.0-cp36-cp36m-linux_x86_64.whl
- torch-1.0.0-cp36-cp36m-win_amd64.whl
- torch-1.0.0-cp37-cp37m-linux_x86_64.whl
- torch-1.0.0-cp37-cp37m-win_amd64.whl
- torch-1.0.1-cp27-cp27m-linux_x86_64.whl
- torch-1.0.1-cp27-cp27mu-linux_x86_64.whl
- torch-1.0.1-cp35-cp35m-linux_x86_64.whl
- torch-1.0.1-cp35-cp35m-win_amd64.whl
- torch-1.0.1-cp36-cp36m-linux_x86_64.whl
- torch-1.0.1-cp36-cp36m-win_amd64.whl
- torch-1.0.1-cp37-cp37m-linux_x86_64.whl
- torch-1.0.1-cp37-cp37m-win_amd64.whl
- torch-1.0.1.post2-cp27-cp27m-linux_x86_64.whl
- torch-1.0.1.post2-cp27-cp27mu-linux_x86_64.whl
- torch-1.0.1.post2-cp35-cp35m-linux_x86_64.whl
- torch-1.0.1.post2-cp36-cp36m-linux_x86_64.whl
- torch-1.0.1.post2-cp37-cp37m-linux_x86_64.whl
- torch-0.3.0-cp27-cp27m-linux_x86_64.whl
- torch-0.3.0-cp27-cp27mu-linux_x86_64.whl
- torch-0.3.0-cp35-cp35m-linux_x86_64.whl
- torch-0.3.0-cp36-cp36m-linux_x86_64.whl
- torch-0.3.0.post2-cp27-cp27m-linux_x86_64.whl
- torch-0.3.0.post2-cp27-cp27mu-linux_x86_64.whl
- torch-0.3.0.post2-cp35-cp35m-linux_x86_64.whl
- torch-0.3.0.post2-cp36-cp36m-linux_x86_64.whl
- torch-0.3.0.post3-cp27-cp27m-linux_x86_64.whl
- torch-0.3.0.post3-cp27-cp27mu-linux_x86_64.whl
- torch-0.3.0.post3-cp35-cp35m-linux_x86_64.whl
- torch-0.3.0.post3-cp36-cp36m-linux_x86_64.whl
- torch-0.3.0.post4-cp27-cp27m-linux_x86_64.whl
- torch-0.3.0.post4-cp27-cp27mu-linux_x86_64.whl
- torch-0.3.0.post4-cp35-cp35m-linux_x86_64.whl
- torch-0.3.0.post4-cp36-cp36m-linux_x86_64.whl
- torch-0.3.1-cp27-cp27m-linux_x86_64.whl
- torch-0.3.1-cp27-cp27mu-linux_x86_64.whl
- torch-0.3.1-cp35-cp35m-linux_x86_64.whl
- torch-0.3.1-cp36-cp36m-linux_x86_64.whl
- torch-0.4.0-cp27-cp27m-linux_x86_64.whl
- torch-0.4.0-cp27-cp27mu-linux_x86_64.whl
- torch-0.4.0-cp35-cp35m-linux_x86_64.whl
- torch-0.4.0-cp35-cp35m-win_amd64.whl
- torch-0.4.0-cp36-cp36m-linux_x86_64.whl
- torch-0.4.0-cp36-cp36m-win_amd64.whl
- torch-0.4.1-cp27-cp27m-linux_x86_64.whl
- torch-0.4.1-cp27-cp27mu-linux_x86_64.whl
- torch-0.4.1-cp35-cp35m-linux_x86_64.whl
- torch-0.4.1-cp35-cp35m-win_amd64.whl
- torch-0.4.1-cp36-cp36m-linux_x86_64.whl
- torch-0.4.1-cp36-cp36m-win_amd64.whl
- torch-0.4.1-cp37-cp37m-linux_x86_64.whl
- torch-0.4.1-cp37-cp37m-win_amd64.whl
- torch-0.4.1.post2-cp37-cp37m-linux_x86_64.whl
- torch-1.0.0-cp27-cp27m-linux_x86_64.whl
- torch-1.0.0-cp27-cp27mu-linux_x86_64.whl
- torch-1.0.0-cp35-cp35m-linux_x86_64.whl
- torch-1.0.0-cp35-cp35m-win_amd64.whl
- torch-1.0.0-cp36-cp36m-linux_x86_64.whl
- torch-1.0.0-cp36-cp36m-win_amd64.whl
- torch-1.0.0-cp37-cp37m-linux_x86_64.whl
- torch-1.0.0-cp37-cp37m-win_amd64.whl
- torch-1.0.1-cp27-cp27m-linux_x86_64.whl
- torch-1.0.1-cp27-cp27mu-linux_x86_64.whl
- torch-1.0.1-cp35-cp35m-linux_x86_64.whl
- torch-1.0.1-cp35-cp35m-win_amd64.whl
- torch-1.0.1-cp36-cp36m-linux_x86_64.whl
- torch-1.0.1-cp36-cp36m-win_amd64.whl
- torch-1.0.1-cp37-cp37m-linux_x86_64.whl
- torch-1.0.1-cp37-cp37m-win_amd64.whl
- torch-1.0.1.post2-cp27-cp27m-linux_x86_64.whl
- torch-1.0.1.post2-cp27-cp27mu-linux_x86_64.whl
- torch-1.0.1.post2-cp35-cp35m-linux_x86_64.whl
- torch-1.0.1.post2-cp36-cp36m-linux_x86_64.whl
- torch-1.0.1.post2-cp37-cp37m-linux_x86_64.whl
- torch-1.1.0-cp27-cp27m-linux_x86_64.whl
- torch-1.1.0-cp27-cp27mu-linux_x86_64.whl
- torch-1.1.0-cp35-cp35m-linux_x86_64.whl
- torch-1.1.0-cp35-cp35m-win_amd64.whl
- torch-1.1.0-cp36-cp36m-linux_x86_64.whl
- torch-1.1.0-cp36-cp36m-win_amd64.whl
- torch-1.1.0-cp37-cp37m-linux_x86_64.whl
- torch-1.1.0-cp37-cp37m-win_amd64.whl
- torch-0.3.1-cp27-cp27m-linux_x86_64.whl
- torch-0.3.1-cp27-cp27mu-linux_x86_64.whl
- torch-0.3.1-cp35-cp35m-linux_x86_64.whl
- torch-0.3.1-cp36-cp36m-linux_x86_64.whl
- torch-0.4.0-cp27-cp27m-linux_x86_64.whl
- torch-0.4.0-cp27-cp27mu-linux_x86_64.whl
- torch-0.4.0-cp35-cp35m-linux_x86_64.whl
- torch-0.4.0-cp35-cp35m-win_amd64.whl
- torch-0.4.0-cp36-cp36m-linux_x86_64.whl
- torch-0.4.0-cp36-cp36m-win_amd64.whl
- torch-0.4.1-cp27-cp27m-linux_x86_64.whl
- torch-0.4.1-cp27-cp27mu-linux_x86_64.whl
- torch-0.4.1-cp35-cp35m-linux_x86_64.whl
- torch-0.4.1-cp35-cp35m-win_amd64.whl
- torch-0.4.1-cp36-cp36m-linux_x86_64.whl
- torch-0.4.1-cp36-cp36m-win_amd64.whl
- torch-0.4.1-cp37-cp37m-linux_x86_64.whl
- torch-0.4.1-cp37-cp37m-win_amd64.whl
- torch-0.4.1.post2-cp37-cp37m-linux_x86_64.whl
- torch-1.2.0+cu92-cp27-cp27m-manylinux1_x86_64.whl
- torch-1.2.0+cu92-cp27-cp27mu-manylinux1_x86_64.whl
- torch-1.2.0+cu92-cp35-cp35m-manylinux1_x86_64.whl
- torch-1.2.0+cu92-cp35-cp35m-win_amd64.whl
- torch-1.2.0+cu92-cp36-cp36m-manylinux1_x86_64.whl
- torch-1.2.0+cu92-cp36-cp36m-win_amd64.whl
- torch-1.2.0+cu92-cp37-cp37m-manylinux1_x86_64.whl
- torch-1.2.0+cu92-cp37-cp37m-win_amd64.whl
- torch-1.3.0+cu92-cp27-cp27m-linux_x86_64.whl
- torch-1.3.0+cu92-cp27-cp27mu-linux_x86_64.whl
- torch-1.3.0+cu92-cp35-cp35m-linux_x86_64.whl
- torch-1.3.0+cu92-cp35-cp35m-win_amd64.whl
- torch-1.3.0+cu92-cp36-cp36m-linux_x86_64.whl
- torch-1.3.0+cu92-cp36-cp36m-win_amd64.whl
- torch-1.3.0+cu92-cp37-cp37m-linux_x86_64.whl
- torch-1.3.0+cu92-cp37-cp37m-win_amd64.whl
- torch-1.3.1+cu92-cp27-cp27m-linux_x86_64.whl
- torch-1.3.1+cu92-cp27-cp27mu-linux_x86_64.whl
- torch-1.3.1+cu92-cp35-cp35m-linux_x86_64.whl
- torch-1.3.1+cu92-cp35-cp35m-win_amd64.whl
- torch-1.3.1+cu92-cp36-cp36m-linux_x86_64.whl
- torch-1.3.1+cu92-cp36-cp36m-win_amd64.whl
- torch-1.3.1+cu92-cp37-cp37m-linux_x86_64.whl
- torch-1.3.1+cu92-cp37-cp37m-win_amd64.whl
- torch-1.4.0+cu92-cp27-cp27m-linux_x86_64.whl
- torch-1.4.0+cu92-cp27-cp27mu-linux_x86_64.whl
- torch-1.4.0+cu92-cp35-cp35m-linux_x86_64.whl
- torch-1.4.0+cu92-cp35-cp35m-win_amd64.whl
- torch-1.4.0+cu92-cp36-cp36m-linux_x86_64.whl
- torch-1.4.0+cu92-cp36-cp36m-win_amd64.whl
- torch-1.4.0+cu92-cp37-cp37m-linux_x86_64.whl
- torch-1.4.0+cu92-cp37-cp37m-win_amd64.whl
- torch-1.4.0+cu92-cp38-cp38-linux_x86_64.whl
- torch-1.4.0+cu92-cp38-cp38-win_amd64.whl
- torch-1.5.0+cu92-cp27-cp27m-linux_x86_64.whl
- torch-1.5.0+cu92-cp27-cp27mu-linux_x86_64.whl
- torch-1.5.0+cu92-cp35-cp35m-linux_x86_64.whl
- torch-1.5.0+cu92-cp35-cp35m-win_amd64.whl
- torch-1.5.0+cu92-cp36-cp36m-linux_x86_64.whl
- torch-1.5.0+cu92-cp36-cp36m-win_amd64.whl
- torch-1.5.0+cu92-cp37-cp37m-linux_x86_64.whl
- torch-1.5.0+cu92-cp37-cp37m-win_amd64.whl
- torch-1.5.0+cu92-cp38-cp38-linux_x86_64.whl
- torch-1.5.0+cu92-cp38-cp38-win_amd64.whl
- torch-1.5.1+cu92-cp35-cp35m-linux_x86_64.whl
- torch-1.5.1+cu92-cp35-cp35m-win_amd64.whl
- torch-1.5.1+cu92-cp36-cp36m-linux_x86_64.whl
- torch-1.5.1+cu92-cp36-cp36m-win_amd64.whl
- torch-1.5.1+cu92-cp37-cp37m-linux_x86_64.whl
- torch-1.5.1+cu92-cp37-cp37m-win_amd64.whl
- torch-1.5.1+cu92-cp38-cp38-linux_x86_64.whl
- torch-1.5.1+cu92-cp38-cp38-win_amd64.whl
- torch-1.6.0+cu92-cp36-cp36m-linux_x86_64.whl
- torch-1.6.0+cu92-cp37-cp37m-linux_x86_64.whl
- torch-1.6.0+cu92-cp38-cp38-linux_x86_64.whl
- torch-1.7.0+cu92-cp36-cp36m-linux_x86_64.whl
- torch-1.7.0+cu92-cp37-cp37m-linux_x86_64.whl
- torch-1.7.0+cu92-cp38-cp38-linux_x86_64.whl
- torch-1.7.1+cu92-cp36-cp36m-linux_x86_64.whl
- torch-1.7.1+cu92-cp37-cp37m-linux_x86_64.whl
- torch-1.7.1+cu92-cp38-cp38-linux_x86_64.whl
- torch-1.7.1+cu92-cp39-cp39-linux_x86_64.whl
- torch-1.8.0+rocm3.10-cp36-cp36m-linux_x86_64.whl
- torch-1.8.0+rocm3.10-cp37-cp37m-linux_x86_64.whl
- torch-1.8.0+rocm3.10-cp38-cp38-linux_x86_64.whl
- torch-1.8.0+rocm3.10-cp39-cp39-linux_x86_64.whl
- torch-1.8.1+rocm3.10-cp36-cp36m-linux_x86_64.whl
- torch-1.8.1+rocm3.10-cp37-cp37m-linux_x86_64.whl
- torch-1.8.1+rocm3.10-cp38-cp38-linux_x86_64.whl
- torch-1.8.1+rocm3.10-cp39-cp39-linux_x86_64.whl
- torch-1.7.1+rocm3.7-cp36-cp36m-linux_x86_64.whl
- torch-1.7.1+rocm3.7-cp37-cp37m-linux_x86_64.whl
- torch-1.7.1+rocm3.7-cp38-cp38-linux_x86_64.whl
- torch-1.7.1+rocm3.7-cp39-cp39-linux_x86_64.whl
- torch-1.7.1+rocm3.8-cp36-cp36m-linux_x86_64.whl
- torch-1.7.1+rocm3.8-cp37-cp37m-linux_x86_64.whl
- torch-1.7.1+rocm3.8-cp38-cp38-linux_x86_64.whl
- torch-1.7.1+rocm3.8-cp39-cp39-linux_x86_64.whl
- torch-1.10.0+rocm4.0.1-cp36-cp36m-linux_x86_64.whl
- torch-1.10.0+rocm4.0.1-cp37-cp37m-linux_x86_64.whl
- torch-1.10.0+rocm4.0.1-cp38-cp38-linux_x86_64.whl
- torch-1.10.0+rocm4.0.1-cp39-cp39-linux_x86_64.whl
- torch-1.10.1+rocm4.0.1-cp36-cp36m-linux_x86_64.whl
- torch-1.10.1+rocm4.0.1-cp37-cp37m-linux_x86_64.whl
- torch-1.10.1+rocm4.0.1-cp38-cp38-linux_x86_64.whl
- torch-1.10.1+rocm4.0.1-cp39-cp39-linux_x86_64.whl
- torch-1.10.2+rocm4.0.1-cp36-cp36m-linux_x86_64.whl
- torch-1.10.2+rocm4.0.1-cp37-cp37m-linux_x86_64.whl
- torch-1.10.2+rocm4.0.1-cp38-cp38-linux_x86_64.whl
- torch-1.10.2+rocm4.0.1-cp39-cp39-linux_x86_64.whl
- torch-1.8.0+rocm4.0.1-cp36-cp36m-linux_x86_64.whl
- torch-1.8.0+rocm4.0.1-cp37-cp37m-linux_x86_64.whl
- torch-1.8.0+rocm4.0.1-cp38-cp38-linux_x86_64.whl
- torch-1.8.0+rocm4.0.1-cp39-cp39-linux_x86_64.whl
- torch-1.8.1+rocm4.0.1-cp36-cp36m-linux_x86_64.whl
- torch-1.8.1+rocm4.0.1-cp37-cp37m-linux_x86_64.whl
- torch-1.8.1+rocm4.0.1-cp38-cp38-linux_x86_64.whl
- torch-1.8.1+rocm4.0.1-cp39-cp39-linux_x86_64.whl
- torch-1.9.0+rocm4.0.1-cp36-cp36m-linux_x86_64.whl
- torch-1.9.0+rocm4.0.1-cp37-cp37m-linux_x86_64.whl
- torch-1.9.0+rocm4.0.1-cp38-cp38-linux_x86_64.whl
- torch-1.9.0+rocm4.0.1-cp39-cp39-linux_x86_64.whl
- torch-1.9.1+rocm4.0.1-cp36-cp36m-linux_x86_64.whl
- torch-1.9.1+rocm4.0.1-cp37-cp37m-linux_x86_64.whl
- torch-1.9.1+rocm4.0.1-cp38-cp38-linux_x86_64.whl
- torch-1.9.1+rocm4.0.1-cp39-cp39-linux_x86_64.whl
- torch-1.10.0+rocm4.1-cp36-cp36m-linux_x86_64.whl
- torch-1.10.0+rocm4.1-cp37-cp37m-linux_x86_64.whl
- torch-1.10.0+rocm4.1-cp38-cp38-linux_x86_64.whl
- torch-1.10.0+rocm4.1-cp39-cp39-linux_x86_64.whl
- torch-1.10.1+rocm4.1-cp36-cp36m-linux_x86_64.whl
- torch-1.10.1+rocm4.1-cp37-cp37m-linux_x86_64.whl
- torch-1.10.1+rocm4.1-cp38-cp38-linux_x86_64.whl
- torch-1.10.1+rocm4.1-cp39-cp39-linux_x86_64.whl
- torch-1.10.2+rocm4.1-cp36-cp36m-linux_x86_64.whl
- torch-1.10.2+rocm4.1-cp37-cp37m-linux_x86_64.whl
- torch-1.10.2+rocm4.1-cp38-cp38-linux_x86_64.whl
- torch-1.10.2+rocm4.1-cp39-cp39-linux_x86_64.whl
- torch-1.9.0+rocm4.1-cp36-cp36m-linux_x86_64.whl
- torch-1.9.0+rocm4.1-cp37-cp37m-linux_x86_64.whl
- torch-1.9.0+rocm4.1-cp38-cp38-linux_x86_64.whl
- torch-1.9.0+rocm4.1-cp39-cp39-linux_x86_64.whl
- torch-1.9.1+rocm4.1-cp36-cp36m-linux_x86_64.whl
- torch-1.9.1+rocm4.1-cp37-cp37m-linux_x86_64.whl
- torch-1.9.1+rocm4.1-cp38-cp38-linux_x86_64.whl
- torch-1.9.1+rocm4.1-cp39-cp39-linux_x86_64.whl
- torch-1.10.0+rocm4.2-cp36-cp36m-linux_x86_64.whl
- torch-1.10.0+rocm4.2-cp37-cp37m-linux_x86_64.whl
- torch-1.10.0+rocm4.2-cp38-cp38-linux_x86_64.whl
- torch-1.10.0+rocm4.2-cp39-cp39-linux_x86_64.whl
- torch-1.10.1+rocm4.2-cp36-cp36m-linux_x86_64.whl
- torch-1.10.1+rocm4.2-cp37-cp37m-linux_x86_64.whl
- torch-1.10.1+rocm4.2-cp38-cp38-linux_x86_64.whl
- torch-1.10.1+rocm4.2-cp39-cp39-linux_x86_64.whl
- torch-1.10.2+rocm4.2-cp36-cp36m-linux_x86_64.whl
- torch-1.10.2+rocm4.2-cp37-cp37m-linux_x86_64.whl
- torch-1.10.2+rocm4.2-cp38-cp38-linux_x86_64.whl
- torch-1.10.2+rocm4.2-cp39-cp39-linux_x86_64.whl
- torch-1.9.0+rocm4.2-cp36-cp36m-linux_x86_64.whl
- torch-1.9.0+rocm4.2-cp37-cp37m-linux_x86_64.whl
- torch-1.9.0+rocm4.2-cp38-cp38-linux_x86_64.whl
- torch-1.9.0+rocm4.2-cp39-cp39-linux_x86_64.whl
- torch-1.9.1+rocm4.2-cp36-cp36m-linux_x86_64.whl
- torch-1.9.1+rocm4.2-cp37-cp37m-linux_x86_64.whl
- torch-1.9.1+rocm4.2-cp38-cp38-linux_x86_64.whl
- torch-1.9.1+rocm4.2-cp39-cp39-linux_x86_64.whl
- torch-1.11.0+rocm4.3.1-cp310-cp310-linux_x86_64.whl
- torch-1.11.0+rocm4.3.1-cp37-cp37m-linux_x86_64.whl
- torch-1.11.0+rocm4.3.1-cp38-cp38-linux_x86_64.whl
- torch-1.11.0+rocm4.3.1-cp39-cp39-linux_x86_64.whl
- torch-1.11.0+rocm4.5.2-cp310-cp310-linux_x86_64.whl
- torch-1.11.0+rocm4.5.2-cp37-cp37m-linux_x86_64.whl
- torch-1.11.0+rocm4.5.2-cp38-cp38-linux_x86_64.whl
- torch-1.11.0+rocm4.5.2-cp39-cp39-linux_x86_64.whl
- torch-1.12.0+rocm5.0-cp310-cp310-linux_x86_64.whl
- torch-1.12.0+rocm5.0-cp37-cp37m-linux_x86_64.whl
- torch-1.12.0+rocm5.0-cp38-cp38-linux_x86_64.whl
- torch-1.12.0+rocm5.0-cp39-cp39-linux_x86_64.whl
- torch-1.12.1+rocm5.0-cp310-cp310-linux_x86_64.whl
- torch-1.12.1+rocm5.0-cp37-cp37m-linux_x86_64.whl
- torch-1.12.1+rocm5.0-cp38-cp38-linux_x86_64.whl
- torch-1.12.1+rocm5.0-cp39-cp39-linux_x86_64.whl
- torch-1.12.0+rocm5.1.1-cp310-cp310-linux_x86_64.whl
- torch-1.12.0+rocm5.1.1-cp37-cp37m-linux_x86_64.whl
- torch-1.12.0+rocm5.1.1-cp38-cp38-linux_x86_64.whl
- torch-1.12.0+rocm5.1.1-cp39-cp39-linux_x86_64.whl
- torch-1.12.1+rocm5.1.1-cp310-cp310-linux_x86_64.whl
- torch-1.12.1+rocm5.1.1-cp37-cp37m-linux_x86_64.whl
- torch-1.12.1+rocm5.1.1-cp38-cp38-linux_x86_64.whl
- torch-1.12.1+rocm5.1.1-cp39-cp39-linux_x86_64.whl
- torch-1.13.0+rocm5.1.1-cp310-cp310-linux_x86_64.whl
- torch-1.13.0+rocm5.1.1-cp37-cp37m-linux_x86_64.whl
- torch-1.13.0+rocm5.1.1-cp38-cp38-linux_x86_64.whl
- torch-1.13.0+rocm5.1.1-cp39-cp39-linux_x86_64.whl
- torch-1.13.1+rocm5.1.1-cp310-cp310-linux_x86_64.whl
- torch-1.13.1+rocm5.1.1-cp37-cp37m-linux_x86_64.whl
- torch-1.13.1+rocm5.1.1-cp38-cp38-linux_x86_64.whl
- torch-1.13.1+rocm5.1.1-cp39-cp39-linux_x86_64.whl
- torch-1.13.0+rocm5.2-cp310-cp310-linux_x86_64.whl
- torch-1.13.0+rocm5.2-cp37-cp37m-linux_x86_64.whl
- torch-1.13.0+rocm5.2-cp38-cp38-linux_x86_64.whl
- torch-1.13.0+rocm5.2-cp39-cp39-linux_x86_64.whl
- torch-1.13.1+rocm5.2-cp310-cp310-linux_x86_64.whl
- torch-1.13.1+rocm5.2-cp37-cp37m-linux_x86_64.whl
- torch-1.13.1+rocm5.2-cp38-cp38-linux_x86_64.whl
- torch-1.13.1+rocm5.2-cp39-cp39-linux_x86_64.whl
- torch-2.0.0+rocm5.3-cp310-cp310-linux_x86_64.whl
- torch-2.0.0+rocm5.3-cp38-cp38-linux_x86_64.whl
- torch-2.0.0+rocm5.3-cp39-cp39-linux_x86_64.whl
- torch-2.0.1+rocm5.3-cp310-cp310-linux_x86_64.whl
- torch-2.0.1+rocm5.3-cp311-cp311-linux_x86_64.whl
- torch-2.0.1+rocm5.3-cp38-cp38-linux_x86_64.whl
- torch-2.0.1+rocm5.3-cp39-cp39-linux_x86_64.whl
- torch-2.0.0+rocm5.4.2-cp310-cp310-linux_x86_64.whl
- torch-2.0.0+rocm5.4.2-cp38-cp38-linux_x86_64.whl
- torch-2.0.0+rocm5.4.2-cp39-cp39-linux_x86_64.whl
- torch-2.0.1+rocm5.4.2-cp310-cp310-linux_x86_64.whl
- torch-2.0.1+rocm5.4.2-cp311-cp311-linux_x86_64.whl
- torch-2.0.1+rocm5.4.2-cp38-cp38-linux_x86_64.whl
- torch-2.0.1+rocm5.4.2-cp39-cp39-linux_x86_64.whl
- torch-2.1.0+rocm5.5-cp310-cp310-linux_x86_64.whl
- torch-2.1.0+rocm5.5-cp311-cp311-linux_x86_64.whl
- torch-2.1.0+rocm5.5-cp38-cp38-linux_x86_64.whl
- torch-2.1.0+rocm5.5-cp39-cp39-linux_x86_64.whl
- torch-2.1.1+rocm5.5-cp310-cp310-linux_x86_64.whl
- torch-2.1.1+rocm5.5-cp311-cp311-linux_x86_64.whl
- torch-2.1.1+rocm5.5-cp38-cp38-linux_x86_64.whl
- torch-2.1.1+rocm5.5-cp39-cp39-linux_x86_64.whl
- torch-2.1.2+rocm5.5-cp310-cp310-linux_x86_64.whl
- torch-2.1.2+rocm5.5-cp311-cp311-linux_x86_64.whl
- torch-2.1.2+rocm5.5-cp38-cp38-linux_x86_64.whl
- torch-2.1.2+rocm5.5-cp39-cp39-linux_x86_64.whl
- torch-2.1.0+rocm5.6-cp310-cp310-linux_x86_64.whl
- torch-2.1.0+rocm5.6-cp311-cp311-linux_x86_64.whl
- torch-2.1.0+rocm5.6-cp38-cp38-linux_x86_64.whl
- torch-2.1.0+rocm5.6-cp39-cp39-linux_x86_64.whl
- torch-2.1.1+rocm5.6-cp310-cp310-linux_x86_64.whl
- torch-2.1.1+rocm5.6-cp311-cp311-linux_x86_64.whl
- torch-2.1.1+rocm5.6-cp38-cp38-linux_x86_64.whl
- torch-2.1.1+rocm5.6-cp39-cp39-linux_x86_64.whl
- torch-2.1.2+rocm5.6-cp310-cp310-linux_x86_64.whl
- torch-2.1.2+rocm5.6-cp311-cp311-linux_x86_64.whl
- torch-2.1.2+rocm5.6-cp38-cp38-linux_x86_64.whl
- torch-2.1.2+rocm5.6-cp39-cp39-linux_x86_64.whl
- torch-2.2.0+rocm5.6-cp310-cp310-linux_x86_64.whl
- torch-2.2.0+rocm5.6-cp311-cp311-linux_x86_64.whl
- torch-2.2.0+rocm5.6-cp312-cp312-linux_x86_64.whl
- torch-2.2.0+rocm5.6-cp38-cp38-linux_x86_64.whl
- torch-2.2.0+rocm5.6-cp39-cp39-linux_x86_64.whl
- torch-2.2.1+rocm5.6-cp310-cp310-linux_x86_64.whl
- torch-2.2.1+rocm5.6-cp311-cp311-linux_x86_64.whl
- torch-2.2.1+rocm5.6-cp312-cp312-linux_x86_64.whl
- torch-2.2.1+rocm5.6-cp38-cp38-linux_x86_64.whl
- torch-2.2.1+rocm5.6-cp39-cp39-linux_x86_64.whl
- torch-2.2.2+rocm5.6-cp310-cp310-linux_x86_64.whl
- torch-2.2.2+rocm5.6-cp311-cp311-linux_x86_64.whl
- torch-2.2.2+rocm5.6-cp312-cp312-linux_x86_64.whl
- torch-2.2.2+rocm5.6-cp38-cp38-linux_x86_64.whl
- torch-2.2.2+rocm5.6-cp39-cp39-linux_x86_64.whl
- torch-2.2.0+rocm5.7-cp310-cp310-linux_x86_64.whl
- torch-2.2.0+rocm5.7-cp311-cp311-linux_x86_64.whl
- torch-2.2.0+rocm5.7-cp312-cp312-linux_x86_64.whl
- torch-2.2.0+rocm5.7-cp38-cp38-linux_x86_64.whl
- torch-2.2.0+rocm5.7-cp39-cp39-linux_x86_64.whl
- torch-2.2.1+rocm5.7-cp310-cp310-linux_x86_64.whl
- torch-2.2.1+rocm5.7-cp311-cp311-linux_x86_64.whl
- torch-2.2.1+rocm5.7-cp312-cp312-linux_x86_64.whl
- torch-2.2.1+rocm5.7-cp38-cp38-linux_x86_64.whl
- torch-2.2.1+rocm5.7-cp39-cp39-linux_x86_64.whl
- torch-2.2.2+rocm5.7-cp310-cp310-linux_x86_64.whl
- torch-2.2.2+rocm5.7-cp311-cp311-linux_x86_64.whl
- torch-2.2.2+rocm5.7-cp312-cp312-linux_x86_64.whl
- torch-2.2.2+rocm5.7-cp38-cp38-linux_x86_64.whl
- torch-2.2.2+rocm5.7-cp39-cp39-linux_x86_64.whl
- torch-2.3.0+rocm5.7-cp310-cp310-linux_x86_64.whl
- torch-2.3.0+rocm5.7-cp311-cp311-linux_x86_64.whl
- torch-2.3.0+rocm5.7-cp312-cp312-linux_x86_64.whl
- torch-2.3.0+rocm5.7-cp38-cp38-linux_x86_64.whl
- torch-2.3.0+rocm5.7-cp39-cp39-linux_x86_64.whl
- torch-2.3.1+rocm5.7-cp310-cp310-linux_x86_64.whl
- torch-2.3.1+rocm5.7-cp311-cp311-linux_x86_64.whl
- torch-2.3.1+rocm5.7-cp312-cp312-linux_x86_64.whl
- torch-2.3.1+rocm5.7-cp38-cp38-linux_x86_64.whl
- torch-2.3.1+rocm5.7-cp39-cp39-linux_x86_64.whl
- torch-2.3.0+rocm6.0-cp310-cp310-linux_x86_64.whl
- torch-2.3.0+rocm6.0-cp311-cp311-linux_x86_64.whl
- torch-2.3.0+rocm6.0-cp312-cp312-linux_x86_64.whl
- torch-2.3.0+rocm6.0-cp38-cp38-linux_x86_64.whl
- torch-2.3.0+rocm6.0-cp39-cp39-linux_x86_64.whl
- torch-2.3.1+rocm6.0-cp310-cp310-linux_x86_64.whl
- torch-2.3.1+rocm6.0-cp311-cp311-linux_x86_64.whl
- torch-2.3.1+rocm6.0-cp312-cp312-linux_x86_64.whl
- torch-2.3.1+rocm6.0-cp38-cp38-linux_x86_64.whl
- torch-2.3.1+rocm6.0-cp39-cp39-linux_x86_64.whl
- torch-2.4.0+rocm6.0-cp310-cp310-linux_x86_64.whl
- torch-2.4.0+rocm6.0-cp311-cp311-linux_x86_64.whl
- torch-2.4.0+rocm6.0-cp312-cp312-linux_x86_64.whl
- torch-2.4.0+rocm6.0-cp38-cp38-linux_x86_64.whl
- torch-2.4.0+rocm6.0-cp39-cp39-linux_x86_64.whl
- torch-2.4.1+rocm6.0-cp310-cp310-linux_x86_64.whl
- torch-2.4.1+rocm6.0-cp311-cp311-linux_x86_64.whl
- torch-2.4.1+rocm6.0-cp312-cp312-linux_x86_64.whl
- torch-2.4.1+rocm6.0-cp38-cp38-linux_x86_64.whl
- torch-2.4.1+rocm6.0-cp39-cp39-linux_x86_64.whl
- torch-2.4.0+rocm6.1-cp310-cp310-linux_x86_64.whl
- torch-2.4.0+rocm6.1-cp311-cp311-linux_x86_64.whl
- torch-2.4.0+rocm6.1-cp312-cp312-linux_x86_64.whl
- torch-2.4.0+rocm6.1-cp38-cp38-linux_x86_64.whl
- torch-2.4.0+rocm6.1-cp39-cp39-linux_x86_64.whl
- torch-2.4.1+rocm6.1-cp310-cp310-linux_x86_64.whl
- torch-2.4.1+rocm6.1-cp311-cp311-linux_x86_64.whl
- torch-2.4.1+rocm6.1-cp312-cp312-linux_x86_64.whl
- torch-2.4.1+rocm6.1-cp38-cp38-linux_x86_64.whl
- torch-2.4.1+rocm6.1-cp39-cp39-linux_x86_64.whl
- torch-2.5.0+rocm6.1-cp310-cp310-linux_x86_64.whl
- torch-2.5.0+rocm6.1-cp311-cp311-linux_x86_64.whl
- torch-2.5.0+rocm6.1-cp312-cp312-linux_x86_64.whl
- torch-2.5.0+rocm6.1-cp39-cp39-linux_x86_64.whl
- torch-2.5.1+rocm6.1-cp310-cp310-linux_x86_64.whl
- torch-2.5.1+rocm6.1-cp311-cp311-linux_x86_64.whl
- torch-2.5.1+rocm6.1-cp312-cp312-linux_x86_64.whl
- torch-2.5.1+rocm6.1-cp39-cp39-linux_x86_64.whl
- torch-2.6.0+rocm6.1-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.6.0+rocm6.1-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.6.0+rocm6.1-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.6.0+rocm6.1-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.6.0+rocm6.1-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.6.0+rocm6.1-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.6.0+rocm6.2.4-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.6.0+rocm6.2.4-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.6.0+rocm6.2.4-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.6.0+rocm6.2.4-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.6.0+rocm6.2.4-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.6.0+rocm6.2.4-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.7.0+rocm6.2.4-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.7.0+rocm6.2.4-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.7.0+rocm6.2.4-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.7.0+rocm6.2.4-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.7.0+rocm6.2.4-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.7.0+rocm6.2.4-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.7.1+rocm6.2.4-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.7.1+rocm6.2.4-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.7.1+rocm6.2.4-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.7.1+rocm6.2.4-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.7.1+rocm6.2.4-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.7.1+rocm6.2.4-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.5.0+rocm6.2-cp310-cp310-linux_x86_64.whl
- torch-2.5.0+rocm6.2-cp311-cp311-linux_x86_64.whl
- torch-2.5.0+rocm6.2-cp312-cp312-linux_x86_64.whl
- torch-2.5.0+rocm6.2-cp39-cp39-linux_x86_64.whl
- torch-2.5.1+rocm6.2-cp310-cp310-linux_x86_64.whl
- torch-2.5.1+rocm6.2-cp311-cp311-linux_x86_64.whl
- torch-2.5.1+rocm6.2-cp312-cp312-linux_x86_64.whl
- torch-2.5.1+rocm6.2-cp39-cp39-linux_x86_64.whl
- torch-2.7.0+rocm6.3-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.7.0+rocm6.3-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.7.0+rocm6.3-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.7.0+rocm6.3-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.7.0+rocm6.3-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.7.0+rocm6.3-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.7.1+rocm6.3-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.7.1+rocm6.3-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.7.1+rocm6.3-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.7.1+rocm6.3-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.7.1+rocm6.3-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.7.1+rocm6.3-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.8.0+rocm6.3-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.8.0+rocm6.3-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.8.0+rocm6.3-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.8.0+rocm6.3-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.8.0+rocm6.3-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.8.0+rocm6.3-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.9.0+rocm6.3-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.9.0+rocm6.3-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.9.0+rocm6.3-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.9.0+rocm6.3-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.9.0+rocm6.3-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.9.0+rocm6.3-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.9.0+rocm6.3-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.9.1+rocm6.3-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.9.1+rocm6.3-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.9.1+rocm6.3-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.9.1+rocm6.3-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.9.1+rocm6.3-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.9.1+rocm6.3-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.9.1+rocm6.3-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.8.0+rocm6.4-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.8.0+rocm6.4-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.8.0+rocm6.4-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.8.0+rocm6.4-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.8.0+rocm6.4-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.8.0+rocm6.4-cp39-cp39-manylinux_2_28_x86_64.whl
- torch-2.9.0+rocm6.4-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.9.0+rocm6.4-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.9.0+rocm6.4-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.9.0+rocm6.4-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.9.0+rocm6.4-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.9.0+rocm6.4-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.9.0+rocm6.4-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.9.1+rocm6.4-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.9.1+rocm6.4-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.9.1+rocm6.4-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.9.1+rocm6.4-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.9.1+rocm6.4-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.9.1+rocm6.4-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.9.1+rocm6.4-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.10.0+rocm7.0-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.10.0+rocm7.0-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.10.0+rocm7.0-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.10.0+rocm7.0-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.10.0+rocm7.0-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.10.0+rocm7.0-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.10.0+rocm7.0-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.10.0+rocm7.1-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.10.0+rocm7.1-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.10.0+rocm7.1-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.10.0+rocm7.1-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.10.0+rocm7.1-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.10.0+rocm7.1-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.10.0+rocm7.1-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.11.0+rocm7.1-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.11.0+rocm7.1-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.11.0+rocm7.1-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.11.0+rocm7.1-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.11.0+rocm7.1-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.11.0+rocm7.1-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.11.0+rocm7.1-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-2.11.0+rocm7.2-cp310-cp310-manylinux_2_28_x86_64.whl
- torch-2.11.0+rocm7.2-cp311-cp311-manylinux_2_28_x86_64.whl
- torch-2.11.0+rocm7.2-cp312-cp312-manylinux_2_28_x86_64.whl
- torch-2.11.0+rocm7.2-cp313-cp313-manylinux_2_28_x86_64.whl
- torch-2.11.0+rocm7.2-cp313-cp313t-manylinux_2_28_x86_64.whl
- torch-2.11.0+rocm7.2-cp314-cp314-manylinux_2_28_x86_64.whl
- torch-2.11.0+rocm7.2-cp314-cp314t-manylinux_2_28_x86_64.whl
- torch-0.1-cp27-cp27m-macosx_10_6_x86_64.whl
- torch-0.1-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.1.10.post1-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.10.post1-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.1.10.post1-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.1.11.post4-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.11.post4-cp35-cp35m-macosx_10_7_x86_64.whl
- torch-0.1.11.post4-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.1.11.post5-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.11.post5-cp35-cp35m-macosx_10_7_x86_64.whl
- torch-0.1.11.post5-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.1.12.post1-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.12.post1-cp35-cp35m-macosx_10_7_x86_64.whl
- torch-0.1.12.post1-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.1.12.post2-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.12.post2-cp35-cp35m-macosx_10_7_x86_64.whl
- torch-0.1.12.post2-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.1.6.post17-cp27-cp27mu-linux_x86_64.whl
- torch-0.1.6.post17-cp35-cp35m-linux_x86_64.whl
- torch-0.1.6.post20-cp27-cp27mu-linux_x86_64.whl
- torch-0.1.6.post20-cp35-cp35m-linux_x86_64.whl
- torch-0.1.6.post22-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.6.post22-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.1.7.post2-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.7.post2-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.1.7.post2-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.1.8.post1-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.8.post1-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.1.8.post1-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.1.9.post1-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.9.post1-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.1.9.post1-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.1.9.post2-cp27-none-macosx_10_7_x86_64.whl
- torch-0.1.9.post2-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.1.9.post2-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.2.0.post1-cp27-none-macosx_10_7_x86_64.whl
- torch-0.2.0.post1-cp35-cp35m-macosx_10_7_x86_64.whl
- torch-0.2.0.post1-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.2.0.post2-cp27-none-macosx_10_7_x86_64.whl
- torch-0.2.0.post2-cp35-cp35m-macosx_10_7_x86_64.whl
- torch-0.2.0.post2-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.2.0.post3-cp27-none-macosx_10_7_x86_64.whl
- torch-0.2.0.post3-cp35-cp35m-macosx_10_7_x86_64.whl
- torch-0.2.0.post3-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.3.0-cp27-none-macosx_10_6_x86_64.whl
- torch-0.3.0-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.3.0-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.3.0.post2-cp27-none-macosx_10_6_x86_64.whl
- torch-0.3.0.post2-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.3.0.post2-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.3.0.post3-cp27-none-macosx_10_6_x86_64.whl
- torch-0.3.0.post3-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.3.0.post3-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.3.0.post4-cp27-none-macosx_10_6_x86_64.whl
- torch-0.3.0.post4-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.3.0.post4-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.3.1-cp27-none-macosx_10_6_x86_64.whl
- torch-0.3.1-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.3.1-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.4.0-cp27-none-macosx_10_6_x86_64.whl
- torch-0.4.0-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.4.0-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.4.1-cp27-none-macosx_10_6_x86_64.whl
- torch-0.4.1-cp35-cp35m-macosx_10_6_x86_64.whl
- torch-0.4.1-cp36-cp36m-macosx_10_7_x86_64.whl
- torch-0.4.1-cp37-cp37m-macosx_10_7_x86_64.whl
- torch-1.11.0-cp310-cp310-manylinux2014_aarch64.whl
- torch-1.11.0-cp37-cp37m-manylinux2014_aarch64.whl
- torch-1.11.0-cp38-cp38-manylinux2014_aarch64.whl
- torch-1.11.0-cp39-cp39-manylinux2014_aarch64.whl
- torch-1.12.0-cp310-cp310-manylinux2014_aarch64.whl
- torch-1.12.0-cp37-cp37m-manylinux2014_aarch64.whl
- torch-1.12.0-cp38-cp38-manylinux2014_aarch64.whl
- torch-1.12.0-cp39-cp39-manylinux2014_aarch64.whl
- torch-1.12.1-cp310-cp310-manylinux2014_aarch64.whl
- torch-1.12.1-cp37-cp37m-manylinux2014_aarch64.whl
- torch-1.12.1-cp38-cp38-manylinux2014_aarch64.whl
- torch-1.12.1-cp39-cp39-manylinux2014_aarch64.whl
- torch-1.13.0-cp310-cp310-manylinux2014_aarch64.whl
- torch-1.13.0-cp37-cp37m-manylinux2014_aarch64.whl
- torch-1.13.0-cp38-cp38-manylinux2014_aarch64.whl
- torch-1.13.0-cp39-cp39-manylinux2014_aarch64.whl
- torch-1.13.1-cp310-cp310-manylinux2014_aarch64.whl
- torch-1.13.1-cp37-cp37m-manylinux2014_aarch64.whl
- torch-1.13.1-cp38-cp38-manylinux2014_aarch64.whl
- torch-1.13.1-cp39-cp39-manylinux2014_aarch64.whl
- torch-2.0.0-1-cp310-cp310-manylinux2014_aarch64.whl
- torch-2.0.0-1-cp311-cp311-manylinux2014_aarch64.whl
- torch-2.0.0-1-cp38-cp38-manylinux2014_aarch64.whl
- torch-2.0.0-1-cp39-cp39-manylinux2014_aarch64.whl
- torch-2.0.0-cp310-cp310-manylinux2014_aarch64.whl
- torch-2.0.0-cp311-cp311-manylinux2014_aarch64.whl
- torch-2.0.0-cp38-cp38-manylinux2014_aarch64.whl
- torch-2.0.0-cp39-cp39-manylinux2014_aarch64.whl
- torch-2.0.1-cp310-cp310-manylinux2014_aarch64.whl
- torch-2.0.1-cp311-cp311-manylinux2014_aarch64.whl
- torch-2.0.1-cp38-cp38-manylinux2014_aarch64.whl
- torch-2.0.1-cp39-cp39-manylinux2014_aarch64.whl
- torch-2.10.0+xpu-cp310-cp310-linux_x86_64.whl
- torch-2.10.0+xpu-cp310-cp310-win_amd64.whl
- torch-2.10.0+xpu-cp311-cp311-linux_x86_64.whl
- torch-2.10.0+xpu-cp311-cp311-win_amd64.whl
- torch-2.10.0+xpu-cp312-cp312-linux_x86_64.whl
- torch-2.10.0+xpu-cp312-cp312-win_amd64.whl
- torch-2.10.0+xpu-cp313-cp313-linux_x86_64.whl
- torch-2.10.0+xpu-cp313-cp313-win_amd64.whl
- torch-2.10.0+xpu-cp313-cp313t-linux_x86_64.whl
- torch-2.10.0+xpu-cp313-cp313t-win_amd64.whl
- torch-2.10.0+xpu-cp314-cp314-linux_x86_64.whl
- torch-2.10.0+xpu-cp314-cp314-win_amd64.whl
- torch-2.10.0+xpu-cp314-cp314t-linux_x86_64.whl
- torch-2.10.0+xpu-cp314-cp314t-win_amd64.whl
- torch-2.11.0+xpu-cp310-cp310-linux_x86_64.whl
- torch-2.11.0+xpu-cp310-cp310-win_amd64.whl
- torch-2.11.0+xpu-cp311-cp311-linux_x86_64.whl
- torch-2.11.0+xpu-cp311-cp311-win_amd64.whl
- torch-2.11.0+xpu-cp312-cp312-linux_x86_64.whl
- torch-2.11.0+xpu-cp312-cp312-win_amd64.whl
- torch-2.11.0+xpu-cp313-cp313-linux_x86_64.whl
- torch-2.11.0+xpu-cp313-cp313-win_amd64.whl
- torch-2.11.0+xpu-cp313-cp313t-linux_x86_64.whl
- torch-2.11.0+xpu-cp313-cp313t-win_amd64.whl
- torch-2.11.0+xpu-cp314-cp314-linux_x86_64.whl
- torch-2.11.0+xpu-cp314-cp314-win_amd64.whl
- torch-2.11.0+xpu-cp314-cp314t-linux_x86_64.whl
- torch-2.11.0+xpu-cp314-cp314t-win_amd64.whl
- torch-2.6.0+xpu-cp310-cp310-linux_x86_64.whl
- torch-2.6.0+xpu-cp310-cp310-win_amd64.whl
- torch-2.6.0+xpu-cp311-cp311-linux_x86_64.whl
- torch-2.6.0+xpu-cp311-cp311-win_amd64.whl
- torch-2.6.0+xpu-cp312-cp312-linux_x86_64.whl
- torch-2.6.0+xpu-cp312-cp312-win_amd64.whl
- torch-2.6.0+xpu-cp313-cp313-linux_x86_64.whl
- torch-2.6.0+xpu-cp313-cp313-win_amd64.whl
- torch-2.6.0+xpu-cp39-cp39-linux_x86_64.whl
- torch-2.6.0+xpu-cp39-cp39-win_amd64.whl
- torch-2.7.0+xpu-cp310-cp310-linux_x86_64.whl
- torch-2.7.0+xpu-cp310-cp310-win_amd64.whl
- torch-2.7.0+xpu-cp311-cp311-linux_x86_64.whl
- torch-2.7.0+xpu-cp311-cp311-win_amd64.whl
- torch-2.7.0+xpu-cp312-cp312-linux_x86_64.whl
- torch-2.7.0+xpu-cp312-cp312-win_amd64.whl
- torch-2.7.0+xpu-cp313-cp313-linux_x86_64.whl
- torch-2.7.0+xpu-cp313-cp313-win_amd64.whl
- torch-2.7.0+xpu-cp313-cp313t-linux_x86_64.whl
- torch-2.7.0+xpu-cp313-cp313t-win_amd64.whl
- torch-2.7.0+xpu-cp39-cp39-linux_x86_64.whl
- torch-2.7.0+xpu-cp39-cp39-win_amd64.whl
- torch-2.7.1+xpu-cp310-cp310-linux_x86_64.whl
- torch-2.7.1+xpu-cp310-cp310-win_amd64.whl
- torch-2.7.1+xpu-cp311-cp311-linux_x86_64.whl
- torch-2.7.1+xpu-cp311-cp311-win_amd64.whl
- torch-2.7.1+xpu-cp312-cp312-linux_x86_64.whl
- torch-2.7.1+xpu-cp312-cp312-win_amd64.whl
- torch-2.7.1+xpu-cp313-cp313-linux_x86_64.whl
- torch-2.7.1+xpu-cp313-cp313-win_amd64.whl
- torch-2.7.1+xpu-cp313-cp313t-linux_x86_64.whl
- torch-2.7.1+xpu-cp313-cp313t-win_amd64.whl
- torch-2.7.1+xpu-cp39-cp39-linux_x86_64.whl
- torch-2.7.1+xpu-cp39-cp39-win_amd64.whl
- torch-2.8.0+xpu-cp310-cp310-linux_x86_64.whl
- torch-2.8.0+xpu-cp310-cp310-win_amd64.whl
- torch-2.8.0+xpu-cp311-cp311-linux_x86_64.whl
- torch-2.8.0+xpu-cp311-cp311-win_amd64.whl
- torch-2.8.0+xpu-cp312-cp312-linux_x86_64.whl
- torch-2.8.0+xpu-cp312-cp312-win_amd64.whl
- torch-2.8.0+xpu-cp313-cp313-linux_x86_64.whl
- torch-2.8.0+xpu-cp313-cp313-win_amd64.whl
- torch-2.8.0+xpu-cp313-cp313t-linux_x86_64.whl
- torch-2.8.0+xpu-cp313-cp313t-win_amd64.whl
- torch-2.8.0+xpu-cp39-cp39-linux_x86_64.whl
- torch-2.8.0+xpu-cp39-cp39-win_amd64.whl
- torch-2.9.0+xpu-cp310-cp310-linux_x86_64.whl
- torch-2.9.0+xpu-cp310-cp310-win_amd64.whl
- torch-2.9.0+xpu-cp311-cp311-linux_x86_64.whl
- torch-2.9.0+xpu-cp311-cp311-win_amd64.whl
- torch-2.9.0+xpu-cp312-cp312-linux_x86_64.whl
- torch-2.9.0+xpu-cp312-cp312-win_amd64.whl
- torch-2.9.0+xpu-cp313-cp313-linux_x86_64.whl
- torch-2.9.0+xpu-cp313-cp313-win_amd64.whl
- torch-2.9.0+xpu-cp313-cp313t-linux_x86_64.whl
- torch-2.9.0+xpu-cp313-cp313t-win_amd64.whl
- torch-2.9.0+xpu-cp314-cp314-linux_x86_64.whl
- torch-2.9.0+xpu-cp314-cp314-win_amd64.whl
- torch-2.9.0+xpu-cp314-cp314t-linux_x86_64.whl
- torch-2.9.0+xpu-cp314-cp314t-win_amd64.whl
- torch-2.9.1+xpu-cp310-cp310-linux_x86_64.whl
- torch-2.9.1+xpu-cp310-cp310-win_amd64.whl
- torch-2.9.1+xpu-cp311-cp311-linux_x86_64.whl
- torch-2.9.1+xpu-cp311-cp311-win_amd64.whl
- torch-2.9.1+xpu-cp312-cp312-linux_x86_64.whl
- torch-2.9.1+xpu-cp312-cp312-win_amd64.whl
- torch-2.9.1+xpu-cp313-cp313-linux_x86_64.whl
- torch-2.9.1+xpu-cp313-cp313-win_amd64.whl
- torch-2.9.1+xpu-cp313-cp313t-linux_x86_64.whl
- torch-2.9.1+xpu-cp313-cp313t-win_amd64.whl
- torch-2.9.1+xpu-cp314-cp314-linux_x86_64.whl
- torch-2.9.1+xpu-cp314-cp314-win_amd64.whl
- torch-2.9.1+xpu-cp314-cp314t-linux_x86_64.whl
- torch-2.9.1+xpu-cp314-cp314t-win_amd64.whl
- - - \ No newline at end of file