View AswaniSahoo's full-sized avatar
:octocat:
On My Way To Find
:octocat:
On My Way To Find

Highlights

  • Pro

Block or report AswaniSahoo

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
AswaniSahoo/README.md

ASWANI SAHOO

Typing SVG

Merged PRsPyTorchTwitterLinkedIn


About

I build ML systems for science and production: LLM agents with measured evaluation, weather forecasting models, genomics NLP.

Not from a CS background. Taught myself ML, shipped code upstream, earned PyTorch org recognition. Most of what I know came from having patches reviewed by maintainers who did not have to be kind about it.

B.Tech @ NIT Rourkela '27 | CGPA 8.02 | Odisha, India


Open Source: 33 Merged PRs across 5 organizations

  • Built the adaptive-mesh regional forecasting stack end to end: DynamicGraphBuilder, RegionalForecaster, BoundaryNudgingLayer, variable-resolution H3 mesh, stretched-grid dataset and region-weighted loss
  • Root-caused a silent failure where the decoder discarded the encoder's per-observation features, capping the model at the no-change baseline. Skip-connection fix, zero new parameters, held-out skill 4% → 20% over persistence
  • Earlier: ThermalizerLayer diffusion denoising, NNJA-AI V1 dataset loader
  • Listed as contributor in graph_weather v1.0.132 (Zenodo DOI)

  • Docathon 2026: Honorable Mention (first-timer category)
  • Migrated 5 core doc files (nn.functional, autograd, extending.func, mkldnn, gradcheck) from RST to MyST
  • Fixed broken {include} paths rendering 3 empty backend pages
  • Documented the CMake build + ctest workflow for C++ tests
  • Added an Inspector API usage example with print_data_tabular()

  • Fitness-windows bug fix in the chaos-scenario scoring path
  • Dependency sync across the krkn-ai toolchain
  • Fixed missing weight field in network-chaos-ng scenario frontmatters

  • Added lower-triangle annotation for Fst heatmaps in the malaria vector genomics library
  • Fixed a CNV data-check indentation bug causing silent failures

Currently Active

  • graph_weather #3 / #238 — adaptive meshing for regional NWP. Currently running a controlled ablation on whether the mesh message-passing earns its parameters against a graph-free baseline; publishing the numbers either way.
  • krkn-chaos/krkn-ai #389 — Elasticsearch config for composite chaos scenarios
  • malariagen-data-python #1310 — haplotype network mixin

Projects

ProjectWhat it doesHighlights
Climate-Risk Analyst AgentliveLangGraph agent returning typed, cited climate-risk reports — or refusing when the evidence is thin105-question SHA-frozen held-out set: recall@3 87%, citation validity 94%, zero false answers. 238 tests, ~$0.001/report, deployed on Cloud Run
Incident Evidence CompilerRoot-cause investigation service where the model proposes and deterministic code decidesRCAEval RE2-OB: top-1 0.932, MRR 0.959. Content-addressed evidence ledger, Postgres SKIP LOCKED worker queue, 304 hermetic tests, mypy strict
Weather TransformerPhysics-aware Transformer for 6-hour weather forecasting on ERA5Written from scratch in PyTorch — no nn.MultiheadAttention. 74 tests, beats persistence by 27% RMSE on a 1,316-sample held-out set
Fairness-Aware Credit RiskFour bias-mitigation interventions measured against a tuned baseline under identical conditions, on two credit datasetsNo intervention helped — and the reasons differ per dataset. Bootstrap intervals on every metric, 212 tests, SHAP adverse-action reason codes, model card. Includes a published self-audit of three defects in my own earlier version, including a proxy leak where dropping gender did not remove sex from the model. Every published number regenerated from an artifact, enforced by a test
Complaint IntelligenceliveRAG and retrieval benchmark over CFPB consumer complaints200K CFPB complaints processed end to end. MiniLM vs BGE, vector vs BM25 vs hybrid vs rerank, KMeans vs BERTopic — every component chosen on measured results, not defaults
LLaMA Task AgentLoRA fine-tuned LLaMA-3.1-8B for agentic tool executionGenerates valid function calls with type-safe args from natural language
Bio Publication AnalyzerSciBERT + TF-IDF classifier for genomics articles81 tests, Europe PMC pipeline end to end

Tech Stack


GitHub Stats


Pinned Loading

  1. climate-risk-agentclimate-risk-agentPublic

    Open-source agentic climate-risk analyst: grounded, cited, structured risk reports from live weather + IPCC docs.

    Python 1

  2. Incident-evidence-compilerIncident-evidence-compilerPublic

    An LLM is allowed to guess; only deterministic code is allowed to decide. Evidence-grounded incident investigation: telemetry becomes a content-addressed ledger, Gemini proposes restricted hypothes…

    Python 1

  3. weather-transformer-scratchweather-transformer-scratchPublic

    Physics-aware Vision Transformer for weather forecasting built from scratch in PyTorch | AI for Science

    Jupyter Notebook 1

  4. fairness-credit-riskfairness-credit-riskPublic

    Fairness-aware credit risk modeling with bias detection, AutoML & AI Fairness 360

    Python 1

  5. complaint-intelligence-systemcomplaint-intelligence-systemPublic

    RAG pipeline for analyzing 12M+ customer complaints using FAISS, Sentence-Transformers & Gemini AI

    Jupyter Notebook 1

  6. llama-task-agentllama-task-agentPublic

    Fine-tuned LLaMA-3.1-8B task agent with LoRA for reliable tool execution

    Jupyter Notebook 1

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content
View AswaniSahoo's full-sized avatar
:octocat:
On My Way To Find
:octocat:
On My Way To Find

Highlights

  • Pro

Block or report AswaniSahoo

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
AswaniSahoo/README.md

ASWANI SAHOO

Typing SVG

Merged PRsPyTorchTwitterLinkedIn


About

I build ML systems for science and production: LLM agents with measured evaluation, weather forecasting models, genomics NLP.

Not from a CS background. Taught myself ML, shipped code upstream, earned PyTorch org recognition. Most of what I know came from having patches reviewed by maintainers who did not have to be kind about it.

B.Tech @ NIT Rourkela '27 | CGPA 8.02 | Odisha, India


Open Source: 33 Merged PRs across 5 organizations

  • Built the adaptive-mesh regional forecasting stack end to end: DynamicGraphBuilder, RegionalForecaster, BoundaryNudgingLayer, variable-resolution H3 mesh, stretched-grid dataset and region-weighted loss
  • Root-caused a silent failure where the decoder discarded the encoder's per-observation features, capping the model at the no-change baseline. Skip-connection fix, zero new parameters, held-out skill 4% → 20% over persistence
  • Earlier: ThermalizerLayer diffusion denoising, NNJA-AI V1 dataset loader
  • Listed as contributor in graph_weather v1.0.132 (Zenodo DOI)

  • Docathon 2026: Honorable Mention (first-timer category)
  • Migrated 5 core doc files (nn.functional, autograd, extending.func, mkldnn, gradcheck) from RST to MyST
  • Fixed broken {include} paths rendering 3 empty backend pages
  • Documented the CMake build + ctest workflow for C++ tests
  • Added an Inspector API usage example with print_data_tabular()

  • Fitness-windows bug fix in the chaos-scenario scoring path
  • Dependency sync across the krkn-ai toolchain
  • Fixed missing weight field in network-chaos-ng scenario frontmatters

  • Added lower-triangle annotation for Fst heatmaps in the malaria vector genomics library
  • Fixed a CNV data-check indentation bug causing silent failures

Currently Active

  • graph_weather #3 / #238 — adaptive meshing for regional NWP. Currently running a controlled ablation on whether the mesh message-passing earns its parameters against a graph-free baseline; publishing the numbers either way.
  • krkn-chaos/krkn-ai #389 — Elasticsearch config for composite chaos scenarios
  • malariagen-data-python #1310 — haplotype network mixin

Projects

ProjectWhat it doesHighlights
Climate-Risk Analyst AgentliveLangGraph agent returning typed, cited climate-risk reports — or refusing when the evidence is thin105-question SHA-frozen held-out set: recall@3 87%, citation validity 94%, zero false answers. 238 tests, ~$0.001/report, deployed on Cloud Run
Incident Evidence CompilerRoot-cause investigation service where the model proposes and deterministic code decidesRCAEval RE2-OB: top-1 0.932, MRR 0.959. Content-addressed evidence ledger, Postgres SKIP LOCKED worker queue, 304 hermetic tests, mypy strict
Weather TransformerPhysics-aware Transformer for 6-hour weather forecasting on ERA5Written from scratch in PyTorch — no nn.MultiheadAttention. 74 tests, beats persistence by 27% RMSE on a 1,316-sample held-out set
Fairness-Aware Credit RiskFour bias-mitigation interventions measured against a tuned baseline under identical conditions, on two credit datasetsNo intervention helped — and the reasons differ per dataset. Bootstrap intervals on every metric, 212 tests, SHAP adverse-action reason codes, model card. Includes a published self-audit of three defects in my own earlier version, including a proxy leak where dropping gender did not remove sex from the model. Every published number regenerated from an artifact, enforced by a test
Complaint IntelligenceliveRAG and retrieval benchmark over CFPB consumer complaints200K CFPB complaints processed end to end. MiniLM vs BGE, vector vs BM25 vs hybrid vs rerank, KMeans vs BERTopic — every component chosen on measured results, not defaults
LLaMA Task AgentLoRA fine-tuned LLaMA-3.1-8B for agentic tool executionGenerates valid function calls with type-safe args from natural language
Bio Publication AnalyzerSciBERT + TF-IDF classifier for genomics articles81 tests, Europe PMC pipeline end to end

Tech Stack


GitHub Stats


Pinned Loading

  1. climate-risk-agentclimate-risk-agentPublic

    Open-source agentic climate-risk analyst: grounded, cited, structured risk reports from live weather + IPCC docs.

    Python 1

  2. Incident-evidence-compilerIncident-evidence-compilerPublic

    An LLM is allowed to guess; only deterministic code is allowed to decide. Evidence-grounded incident investigation: telemetry becomes a content-addressed ledger, Gemini proposes restricted hypothes…

    Python 1

  3. weather-transformer-scratchweather-transformer-scratchPublic

    Physics-aware Vision Transformer for weather forecasting built from scratch in PyTorch | AI for Science

    Jupyter Notebook 1

  4. fairness-credit-riskfairness-credit-riskPublic

    Fairness-aware credit risk modeling with bias detection, AutoML & AI Fairness 360

    Python 1

  5. complaint-intelligence-systemcomplaint-intelligence-systemPublic

    RAG pipeline for analyzing 12M+ customer complaints using FAISS, Sentence-Transformers & Gemini AI

    Jupyter Notebook 1

  6. llama-task-agentllama-task-agentPublic

    Fine-tuned LLaMA-3.1-8B task agent with LoRA for reliable tool execution

    Jupyter Notebook 1

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
View AswaniSahoo's full-sized avatar
:octocat:
On My Way To Find
:octocat:
On My Way To Find

Highlights

  • Pro

Block or report AswaniSahoo

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
AswaniSahoo/README.md

ASWANI SAHOO

Typing SVG

Merged PRsPyTorchTwitterLinkedIn


About

I build ML systems for science and production: LLM agents with measured evaluation, weather forecasting models, genomics NLP.

Not from a CS background. Taught myself ML, shipped code upstream, earned PyTorch org recognition. Most of what I know came from having patches reviewed by maintainers who did not have to be kind about it.

B.Tech @ NIT Rourkela '27 | CGPA 8.02 | Odisha, India


Open Source: 33 Merged PRs across 5 organizations

  • Built the adaptive-mesh regional forecasting stack end to end: DynamicGraphBuilder, RegionalForecaster, BoundaryNudgingLayer, variable-resolution H3 mesh, stretched-grid dataset and region-weighted loss
  • Root-caused a silent failure where the decoder discarded the encoder's per-observation features, capping the model at the no-change baseline. Skip-connection fix, zero new parameters, held-out skill 4% → 20% over persistence
  • Earlier: ThermalizerLayer diffusion denoising, NNJA-AI V1 dataset loader
  • Listed as contributor in graph_weather v1.0.132 (Zenodo DOI)

  • Docathon 2026: Honorable Mention (first-timer category)
  • Migrated 5 core doc files (nn.functional, autograd, extending.func, mkldnn, gradcheck) from RST to MyST
  • Fixed broken {include} paths rendering 3 empty backend pages
  • Documented the CMake build + ctest workflow for C++ tests
  • Added an Inspector API usage example with print_data_tabular()

  • Fitness-windows bug fix in the chaos-scenario scoring path
  • Dependency sync across the krkn-ai toolchain
  • Fixed missing weight field in network-chaos-ng scenario frontmatters

  • Added lower-triangle annotation for Fst heatmaps in the malaria vector genomics library
  • Fixed a CNV data-check indentation bug causing silent failures

Currently Active

  • graph_weather #3 / #238 — adaptive meshing for regional NWP. Currently running a controlled ablation on whether the mesh message-passing earns its parameters against a graph-free baseline; publishing the numbers either way.
  • krkn-chaos/krkn-ai #389 — Elasticsearch config for composite chaos scenarios
  • malariagen-data-python #1310 — haplotype network mixin

Projects

ProjectWhat it doesHighlights
Climate-Risk Analyst AgentliveLangGraph agent returning typed, cited climate-risk reports — or refusing when the evidence is thin105-question SHA-frozen held-out set: recall@3 87%, citation validity 94%, zero false answers. 238 tests, ~$0.001/report, deployed on Cloud Run
Incident Evidence CompilerRoot-cause investigation service where the model proposes and deterministic code decidesRCAEval RE2-OB: top-1 0.932, MRR 0.959. Content-addressed evidence ledger, Postgres SKIP LOCKED worker queue, 304 hermetic tests, mypy strict
Weather TransformerPhysics-aware Transformer for 6-hour weather forecasting on ERA5Written from scratch in PyTorch — no nn.MultiheadAttention. 74 tests, beats persistence by 27% RMSE on a 1,316-sample held-out set
Fairness-Aware Credit RiskFour bias-mitigation interventions measured against a tuned baseline under identical conditions, on two credit datasetsNo intervention helped — and the reasons differ per dataset. Bootstrap intervals on every metric, 212 tests, SHAP adverse-action reason codes, model card. Includes a published self-audit of three defects in my own earlier version, including a proxy leak where dropping gender did not remove sex from the model. Every published number regenerated from an artifact, enforced by a test
Complaint IntelligenceliveRAG and retrieval benchmark over CFPB consumer complaints200K CFPB complaints processed end to end. MiniLM vs BGE, vector vs BM25 vs hybrid vs rerank, KMeans vs BERTopic — every component chosen on measured results, not defaults
LLaMA Task AgentLoRA fine-tuned LLaMA-3.1-8B for agentic tool executionGenerates valid function calls with type-safe args from natural language
Bio Publication AnalyzerSciBERT + TF-IDF classifier for genomics articles81 tests, Europe PMC pipeline end to end

Tech Stack


GitHub Stats


Pinned Loading

  1. climate-risk-agentclimate-risk-agentPublic

    Open-source agentic climate-risk analyst: grounded, cited, structured risk reports from live weather + IPCC docs.

    Python 1

  2. Incident-evidence-compilerIncident-evidence-compilerPublic

    An LLM is allowed to guess; only deterministic code is allowed to decide. Evidence-grounded incident investigation: telemetry becomes a content-addressed ledger, Gemini proposes restricted hypothes…

    Python 1

  3. weather-transformer-scratchweather-transformer-scratchPublic

    Physics-aware Vision Transformer for weather forecasting built from scratch in PyTorch | AI for Science

    Jupyter Notebook 1

  4. fairness-credit-riskfairness-credit-riskPublic

    Fairness-aware credit risk modeling with bias detection, AutoML & AI Fairness 360

    Python 1

  5. complaint-intelligence-systemcomplaint-intelligence-systemPublic

    RAG pipeline for analyzing 12M+ customer complaints using FAISS, Sentence-Transformers & Gemini AI

    Jupyter Notebook 1

  6. llama-task-agentllama-task-agentPublic

    Fine-tuned LLaMA-3.1-8B task agent with LoRA for reliable tool execution

    Jupyter Notebook 1

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
View AswaniSahoo's full-sized avatar
:octocat:
On My Way To Find
:octocat:
On My Way To Find

Highlights

  • Pro

Block or report AswaniSahoo

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
AswaniSahoo/README.md

ASWANI SAHOO

Typing SVG

Merged PRsPyTorchTwitterLinkedIn


About

I build ML systems for science and production: LLM agents with measured evaluation, weather forecasting models, genomics NLP.

Not from a CS background. Taught myself ML, shipped code upstream, earned PyTorch org recognition. Most of what I know came from having patches reviewed by maintainers who did not have to be kind about it.

B.Tech @ NIT Rourkela '27 | CGPA 8.02 | Odisha, India


Open Source: 33 Merged PRs across 5 organizations

  • Built the adaptive-mesh regional forecasting stack end to end: DynamicGraphBuilder, RegionalForecaster, BoundaryNudgingLayer, variable-resolution H3 mesh, stretched-grid dataset and region-weighted loss
  • Root-caused a silent failure where the decoder discarded the encoder's per-observation features, capping the model at the no-change baseline. Skip-connection fix, zero new parameters, held-out skill 4% → 20% over persistence
  • Earlier: ThermalizerLayer diffusion denoising, NNJA-AI V1 dataset loader
  • Listed as contributor in graph_weather v1.0.132 (Zenodo DOI)

  • Docathon 2026: Honorable Mention (first-timer category)
  • Migrated 5 core doc files (nn.functional, autograd, extending.func, mkldnn, gradcheck) from RST to MyST
  • Fixed broken {include} paths rendering 3 empty backend pages
  • Documented the CMake build + ctest workflow for C++ tests
  • Added an Inspector API usage example with print_data_tabular()

  • Fitness-windows bug fix in the chaos-scenario scoring path
  • Dependency sync across the krkn-ai toolchain
  • Fixed missing weight field in network-chaos-ng scenario frontmatters

  • Added lower-triangle annotation for Fst heatmaps in the malaria vector genomics library
  • Fixed a CNV data-check indentation bug causing silent failures

Currently Active

  • graph_weather #3 / #238 — adaptive meshing for regional NWP. Currently running a controlled ablation on whether the mesh message-passing earns its parameters against a graph-free baseline; publishing the numbers either way.
  • krkn-chaos/krkn-ai #389 — Elasticsearch config for composite chaos scenarios
  • malariagen-data-python #1310 — haplotype network mixin

Projects

ProjectWhat it doesHighlights
Climate-Risk Analyst AgentliveLangGraph agent returning typed, cited climate-risk reports — or refusing when the evidence is thin105-question SHA-frozen held-out set: recall@3 87%, citation validity 94%, zero false answers. 238 tests, ~$0.001/report, deployed on Cloud Run
Incident Evidence CompilerRoot-cause investigation service where the model proposes and deterministic code decidesRCAEval RE2-OB: top-1 0.932, MRR 0.959. Content-addressed evidence ledger, Postgres SKIP LOCKED worker queue, 304 hermetic tests, mypy strict
Weather TransformerPhysics-aware Transformer for 6-hour weather forecasting on ERA5Written from scratch in PyTorch — no nn.MultiheadAttention. 74 tests, beats persistence by 27% RMSE on a 1,316-sample held-out set
Fairness-Aware Credit RiskFour bias-mitigation interventions measured against a tuned baseline under identical conditions, on two credit datasetsNo intervention helped — and the reasons differ per dataset. Bootstrap intervals on every metric, 212 tests, SHAP adverse-action reason codes, model card. Includes a published self-audit of three defects in my own earlier version, including a proxy leak where dropping gender did not remove sex from the model. Every published number regenerated from an artifact, enforced by a test
Complaint IntelligenceliveRAG and retrieval benchmark over CFPB consumer complaints200K CFPB complaints processed end to end. MiniLM vs BGE, vector vs BM25 vs hybrid vs rerank, KMeans vs BERTopic — every component chosen on measured results, not defaults
LLaMA Task AgentLoRA fine-tuned LLaMA-3.1-8B for agentic tool executionGenerates valid function calls with type-safe args from natural language
Bio Publication AnalyzerSciBERT + TF-IDF classifier for genomics articles81 tests, Europe PMC pipeline end to end

Tech Stack


GitHub Stats


Pinned Loading

  1. climate-risk-agentclimate-risk-agentPublic

    Open-source agentic climate-risk analyst: grounded, cited, structured risk reports from live weather + IPCC docs.

    Python 1

  2. Incident-evidence-compilerIncident-evidence-compilerPublic

    An LLM is allowed to guess; only deterministic code is allowed to decide. Evidence-grounded incident investigation: telemetry becomes a content-addressed ledger, Gemini proposes restricted hypothes…

    Python 1

  3. weather-transformer-scratchweather-transformer-scratchPublic

    Physics-aware Vision Transformer for weather forecasting built from scratch in PyTorch | AI for Science

    Jupyter Notebook 1

  4. fairness-credit-riskfairness-credit-riskPublic

    Fairness-aware credit risk modeling with bias detection, AutoML & AI Fairness 360

    Python 1

  5. complaint-intelligence-systemcomplaint-intelligence-systemPublic

    RAG pipeline for analyzing 12M+ customer complaints using FAISS, Sentence-Transformers & Gemini AI

    Jupyter Notebook 1

  6. llama-task-agentllama-task-agentPublic

    Fine-tuned LLaMA-3.1-8B task agent with LoRA for reliable tool execution

    Jupyter Notebook 1

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content
View AswaniSahoo's full-sized avatar
:octocat:
On My Way To Find
:octocat:
On My Way To Find

Highlights

  • Pro

Block or report AswaniSahoo

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
AswaniSahoo/README.md

ASWANI SAHOO

Typing SVG

Merged PRsPyTorchTwitterLinkedIn


About

I build ML systems for science and production: LLM agents with measured evaluation, weather forecasting models, genomics NLP.

Not from a CS background. Taught myself ML, shipped code upstream, earned PyTorch org recognition. Most of what I know came from having patches reviewed by maintainers who did not have to be kind about it.

B.Tech @ NIT Rourkela '27 | CGPA 8.02 | Odisha, India


Open Source: 33 Merged PRs across 5 organizations

  • Built the adaptive-mesh regional forecasting stack end to end: DynamicGraphBuilder, RegionalForecaster, BoundaryNudgingLayer, variable-resolution H3 mesh, stretched-grid dataset and region-weighted loss
  • Root-caused a silent failure where the decoder discarded the encoder's per-observation features, capping the model at the no-change baseline. Skip-connection fix, zero new parameters, held-out skill 4% → 20% over persistence
  • Earlier: ThermalizerLayer diffusion denoising, NNJA-AI V1 dataset loader
  • Listed as contributor in graph_weather v1.0.132 (Zenodo DOI)

  • Docathon 2026: Honorable Mention (first-timer category)
  • Migrated 5 core doc files (nn.functional, autograd, extending.func, mkldnn, gradcheck) from RST to MyST
  • Fixed broken {include} paths rendering 3 empty backend pages
  • Documented the CMake build + ctest workflow for C++ tests
  • Added an Inspector API usage example with print_data_tabular()

  • Fitness-windows bug fix in the chaos-scenario scoring path
  • Dependency sync across the krkn-ai toolchain
  • Fixed missing weight field in network-chaos-ng scenario frontmatters

  • Added lower-triangle annotation for Fst heatmaps in the malaria vector genomics library
  • Fixed a CNV data-check indentation bug causing silent failures

Currently Active

  • graph_weather #3 / #238 — adaptive meshing for regional NWP. Currently running a controlled ablation on whether the mesh message-passing earns its parameters against a graph-free baseline; publishing the numbers either way.
  • krkn-chaos/krkn-ai #389 — Elasticsearch config for composite chaos scenarios
  • malariagen-data-python #1310 — haplotype network mixin

Projects

ProjectWhat it doesHighlights
Climate-Risk Analyst AgentliveLangGraph agent returning typed, cited climate-risk reports — or refusing when the evidence is thin105-question SHA-frozen held-out set: recall@3 87%, citation validity 94%, zero false answers. 238 tests, ~$0.001/report, deployed on Cloud Run
Incident Evidence CompilerRoot-cause investigation service where the model proposes and deterministic code decidesRCAEval RE2-OB: top-1 0.932, MRR 0.959. Content-addressed evidence ledger, Postgres SKIP LOCKED worker queue, 304 hermetic tests, mypy strict
Weather TransformerPhysics-aware Transformer for 6-hour weather forecasting on ERA5Written from scratch in PyTorch — no nn.MultiheadAttention. 74 tests, beats persistence by 27% RMSE on a 1,316-sample held-out set
Fairness-Aware Credit RiskFour bias-mitigation interventions measured against a tuned baseline under identical conditions, on two credit datasetsNo intervention helped — and the reasons differ per dataset. Bootstrap intervals on every metric, 212 tests, SHAP adverse-action reason codes, model card. Includes a published self-audit of three defects in my own earlier version, including a proxy leak where dropping gender did not remove sex from the model. Every published number regenerated from an artifact, enforced by a test
Complaint IntelligenceliveRAG and retrieval benchmark over CFPB consumer complaints200K CFPB complaints processed end to end. MiniLM vs BGE, vector vs BM25 vs hybrid vs rerank, KMeans vs BERTopic — every component chosen on measured results, not defaults
LLaMA Task AgentLoRA fine-tuned LLaMA-3.1-8B for agentic tool executionGenerates valid function calls with type-safe args from natural language
Bio Publication AnalyzerSciBERT + TF-IDF classifier for genomics articles81 tests, Europe PMC pipeline end to end

Tech Stack


GitHub Stats


Pinned Loading

  1. climate-risk-agentclimate-risk-agentPublic

    Open-source agentic climate-risk analyst: grounded, cited, structured risk reports from live weather + IPCC docs.

    Python 1

  2. Incident-evidence-compilerIncident-evidence-compilerPublic

    An LLM is allowed to guess; only deterministic code is allowed to decide. Evidence-grounded incident investigation: telemetry becomes a content-addressed ledger, Gemini proposes restricted hypothes…

    Python 1

  3. weather-transformer-scratchweather-transformer-scratchPublic

    Physics-aware Vision Transformer for weather forecasting built from scratch in PyTorch | AI for Science

    Jupyter Notebook 1

  4. fairness-credit-riskfairness-credit-riskPublic

    Fairness-aware credit risk modeling with bias detection, AutoML & AI Fairness 360

    Python 1

  5. complaint-intelligence-systemcomplaint-intelligence-systemPublic

    RAG pipeline for analyzing 12M+ customer complaints using FAISS, Sentence-Transformers & Gemini AI

    Jupyter Notebook 1

  6. llama-task-agentllama-task-agentPublic

    Fine-tuned LLaMA-3.1-8B task agent with LoRA for reliable tool execution

    Jupyter Notebook 1

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
View AswaniSahoo's full-sized avatar
:octocat:
On My Way To Find
:octocat:
On My Way To Find

Highlights

  • Pro

Block or report AswaniSahoo

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
AswaniSahoo/README.md

ASWANI SAHOO

Typing SVG

Merged PRsPyTorchTwitterLinkedIn


About

I build ML systems for science and production: LLM agents with measured evaluation, weather forecasting models, genomics NLP.

Not from a CS background. Taught myself ML, shipped code upstream, earned PyTorch org recognition. Most of what I know came from having patches reviewed by maintainers who did not have to be kind about it.

B.Tech @ NIT Rourkela '27 | CGPA 8.02 | Odisha, India


Open Source: 33 Merged PRs across 5 organizations

  • Built the adaptive-mesh regional forecasting stack end to end: DynamicGraphBuilder, RegionalForecaster, BoundaryNudgingLayer, variable-resolution H3 mesh, stretched-grid dataset and region-weighted loss
  • Root-caused a silent failure where the decoder discarded the encoder's per-observation features, capping the model at the no-change baseline. Skip-connection fix, zero new parameters, held-out skill 4% → 20% over persistence
  • Earlier: ThermalizerLayer diffusion denoising, NNJA-AI V1 dataset loader
  • Listed as contributor in graph_weather v1.0.132 (Zenodo DOI)

  • Docathon 2026: Honorable Mention (first-timer category)
  • Migrated 5 core doc files (nn.functional, autograd, extending.func, mkldnn, gradcheck) from RST to MyST
  • Fixed broken {include} paths rendering 3 empty backend pages
  • Documented the CMake build + ctest workflow for C++ tests
  • Added an Inspector API usage example with print_data_tabular()

  • Fitness-windows bug fix in the chaos-scenario scoring path
  • Dependency sync across the krkn-ai toolchain
  • Fixed missing weight field in network-chaos-ng scenario frontmatters

  • Added lower-triangle annotation for Fst heatmaps in the malaria vector genomics library
  • Fixed a CNV data-check indentation bug causing silent failures

Currently Active

  • graph_weather #3 / #238 — adaptive meshing for regional NWP. Currently running a controlled ablation on whether the mesh message-passing earns its parameters against a graph-free baseline; publishing the numbers either way.
  • krkn-chaos/krkn-ai #389 — Elasticsearch config for composite chaos scenarios
  • malariagen-data-python #1310 — haplotype network mixin

Projects

ProjectWhat it doesHighlights
Climate-Risk Analyst AgentliveLangGraph agent returning typed, cited climate-risk reports — or refusing when the evidence is thin105-question SHA-frozen held-out set: recall@3 87%, citation validity 94%, zero false answers. 238 tests, ~$0.001/report, deployed on Cloud Run
Incident Evidence CompilerRoot-cause investigation service where the model proposes and deterministic code decidesRCAEval RE2-OB: top-1 0.932, MRR 0.959. Content-addressed evidence ledger, Postgres SKIP LOCKED worker queue, 304 hermetic tests, mypy strict
Weather TransformerPhysics-aware Transformer for 6-hour weather forecasting on ERA5Written from scratch in PyTorch — no nn.MultiheadAttention. 74 tests, beats persistence by 27% RMSE on a 1,316-sample held-out set
Fairness-Aware Credit RiskFour bias-mitigation interventions measured against a tuned baseline under identical conditions, on two credit datasetsNo intervention helped — and the reasons differ per dataset. Bootstrap intervals on every metric, 212 tests, SHAP adverse-action reason codes, model card. Includes a published self-audit of three defects in my own earlier version, including a proxy leak where dropping gender did not remove sex from the model. Every published number regenerated from an artifact, enforced by a test
Complaint IntelligenceliveRAG and retrieval benchmark over CFPB consumer complaints200K CFPB complaints processed end to end. MiniLM vs BGE, vector vs BM25 vs hybrid vs rerank, KMeans vs BERTopic — every component chosen on measured results, not defaults
LLaMA Task AgentLoRA fine-tuned LLaMA-3.1-8B for agentic tool executionGenerates valid function calls with type-safe args from natural language
Bio Publication AnalyzerSciBERT + TF-IDF classifier for genomics articles81 tests, Europe PMC pipeline end to end

Tech Stack


GitHub Stats


Pinned Loading

  1. climate-risk-agentclimate-risk-agentPublic

    Open-source agentic climate-risk analyst: grounded, cited, structured risk reports from live weather + IPCC docs.

    Python 1

  2. Incident-evidence-compilerIncident-evidence-compilerPublic

    An LLM is allowed to guess; only deterministic code is allowed to decide. Evidence-grounded incident investigation: telemetry becomes a content-addressed ledger, Gemini proposes restricted hypothes…

    Python 1

  3. weather-transformer-scratchweather-transformer-scratchPublic

    Physics-aware Vision Transformer for weather forecasting built from scratch in PyTorch | AI for Science

    Jupyter Notebook 1

  4. fairness-credit-riskfairness-credit-riskPublic

    Fairness-aware credit risk modeling with bias detection, AutoML & AI Fairness 360

    Python 1

  5. complaint-intelligence-systemcomplaint-intelligence-systemPublic

    RAG pipeline for analyzing 12M+ customer complaints using FAISS, Sentence-Transformers & Gemini AI

    Jupyter Notebook 1

  6. llama-task-agentllama-task-agentPublic

    Fine-tuned LLaMA-3.1-8B task agent with LoRA for reliable tool execution

    Jupyter Notebook 1

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
View AswaniSahoo's full-sized avatar
:octocat:
On My Way To Find
:octocat:
On My Way To Find

Highlights

  • Pro

Block or report AswaniSahoo

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
AswaniSahoo/README.md

ASWANI SAHOO

Typing SVG

Merged PRsPyTorchTwitterLinkedIn


About

I build ML systems for science and production: LLM agents with measured evaluation, weather forecasting models, genomics NLP.

Not from a CS background. Taught myself ML, shipped code upstream, earned PyTorch org recognition. Most of what I know came from having patches reviewed by maintainers who did not have to be kind about it.

B.Tech @ NIT Rourkela '27 | CGPA 8.02 | Odisha, India


Open Source: 33 Merged PRs across 5 organizations

  • Built the adaptive-mesh regional forecasting stack end to end: DynamicGraphBuilder, RegionalForecaster, BoundaryNudgingLayer, variable-resolution H3 mesh, stretched-grid dataset and region-weighted loss
  • Root-caused a silent failure where the decoder discarded the encoder's per-observation features, capping the model at the no-change baseline. Skip-connection fix, zero new parameters, held-out skill 4% → 20% over persistence
  • Earlier: ThermalizerLayer diffusion denoising, NNJA-AI V1 dataset loader
  • Listed as contributor in graph_weather v1.0.132 (Zenodo DOI)

  • Docathon 2026: Honorable Mention (first-timer category)
  • Migrated 5 core doc files (nn.functional, autograd, extending.func, mkldnn, gradcheck) from RST to MyST
  • Fixed broken {include} paths rendering 3 empty backend pages
  • Documented the CMake build + ctest workflow for C++ tests
  • Added an Inspector API usage example with print_data_tabular()

  • Fitness-windows bug fix in the chaos-scenario scoring path
  • Dependency sync across the krkn-ai toolchain
  • Fixed missing weight field in network-chaos-ng scenario frontmatters

  • Added lower-triangle annotation for Fst heatmaps in the malaria vector genomics library
  • Fixed a CNV data-check indentation bug causing silent failures

Currently Active

  • graph_weather #3 / #238 — adaptive meshing for regional NWP. Currently running a controlled ablation on whether the mesh message-passing earns its parameters against a graph-free baseline; publishing the numbers either way.
  • krkn-chaos/krkn-ai #389 — Elasticsearch config for composite chaos scenarios
  • malariagen-data-python #1310 — haplotype network mixin

Projects

ProjectWhat it doesHighlights
Climate-Risk Analyst AgentliveLangGraph agent returning typed, cited climate-risk reports — or refusing when the evidence is thin105-question SHA-frozen held-out set: recall@3 87%, citation validity 94%, zero false answers. 238 tests, ~$0.001/report, deployed on Cloud Run
Incident Evidence CompilerRoot-cause investigation service where the model proposes and deterministic code decidesRCAEval RE2-OB: top-1 0.932, MRR 0.959. Content-addressed evidence ledger, Postgres SKIP LOCKED worker queue, 304 hermetic tests, mypy strict
Weather TransformerPhysics-aware Transformer for 6-hour weather forecasting on ERA5Written from scratch in PyTorch — no nn.MultiheadAttention. 74 tests, beats persistence by 27% RMSE on a 1,316-sample held-out set
Fairness-Aware Credit RiskFour bias-mitigation interventions measured against a tuned baseline under identical conditions, on two credit datasetsNo intervention helped — and the reasons differ per dataset. Bootstrap intervals on every metric, 212 tests, SHAP adverse-action reason codes, model card. Includes a published self-audit of three defects in my own earlier version, including a proxy leak where dropping gender did not remove sex from the model. Every published number regenerated from an artifact, enforced by a test
Complaint IntelligenceliveRAG and retrieval benchmark over CFPB consumer complaints200K CFPB complaints processed end to end. MiniLM vs BGE, vector vs BM25 vs hybrid vs rerank, KMeans vs BERTopic — every component chosen on measured results, not defaults
LLaMA Task AgentLoRA fine-tuned LLaMA-3.1-8B for agentic tool executionGenerates valid function calls with type-safe args from natural language
Bio Publication AnalyzerSciBERT + TF-IDF classifier for genomics articles81 tests, Europe PMC pipeline end to end

Tech Stack


GitHub Stats


Pinned Loading

  1. climate-risk-agentclimate-risk-agentPublic

    Open-source agentic climate-risk analyst: grounded, cited, structured risk reports from live weather + IPCC docs.

    Python 1

  2. Incident-evidence-compilerIncident-evidence-compilerPublic

    An LLM is allowed to guess; only deterministic code is allowed to decide. Evidence-grounded incident investigation: telemetry becomes a content-addressed ledger, Gemini proposes restricted hypothes…

    Python 1

  3. weather-transformer-scratchweather-transformer-scratchPublic

    Physics-aware Vision Transformer for weather forecasting built from scratch in PyTorch | AI for Science

    Jupyter Notebook 1

  4. fairness-credit-riskfairness-credit-riskPublic

    Fairness-aware credit risk modeling with bias detection, AutoML & AI Fairness 360

    Python 1

  5. complaint-intelligence-systemcomplaint-intelligence-systemPublic

    RAG pipeline for analyzing 12M+ customer complaints using FAISS, Sentence-Transformers & Gemini AI

    Jupyter Notebook 1

  6. llama-task-agentllama-task-agentPublic

    Fine-tuned LLaMA-3.1-8B task agent with LoRA for reliable tool execution

    Jupyter Notebook 1

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content
View AswaniSahoo's full-sized avatar
:octocat:
On My Way To Find
:octocat:
On My Way To Find

Highlights

  • Pro

Block or report AswaniSahoo

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
AswaniSahoo/README.md

ASWANI SAHOO

Typing SVG

Merged PRsPyTorchTwitterLinkedIn


About

I build ML systems for science and production: LLM agents with measured evaluation, weather forecasting models, genomics NLP.

Not from a CS background. Taught myself ML, shipped code upstream, earned PyTorch org recognition. Most of what I know came from having patches reviewed by maintainers who did not have to be kind about it.

B.Tech @ NIT Rourkela '27 | CGPA 8.02 | Odisha, India


Open Source: 33 Merged PRs across 5 organizations

  • Built the adaptive-mesh regional forecasting stack end to end: DynamicGraphBuilder, RegionalForecaster, BoundaryNudgingLayer, variable-resolution H3 mesh, stretched-grid dataset and region-weighted loss
  • Root-caused a silent failure where the decoder discarded the encoder's per-observation features, capping the model at the no-change baseline. Skip-connection fix, zero new parameters, held-out skill 4% → 20% over persistence
  • Earlier: ThermalizerLayer diffusion denoising, NNJA-AI V1 dataset loader
  • Listed as contributor in graph_weather v1.0.132 (Zenodo DOI)

  • Docathon 2026: Honorable Mention (first-timer category)
  • Migrated 5 core doc files (nn.functional, autograd, extending.func, mkldnn, gradcheck) from RST to MyST
  • Fixed broken {include} paths rendering 3 empty backend pages
  • Documented the CMake build + ctest workflow for C++ tests
  • Added an Inspector API usage example with print_data_tabular()

  • Fitness-windows bug fix in the chaos-scenario scoring path
  • Dependency sync across the krkn-ai toolchain
  • Fixed missing weight field in network-chaos-ng scenario frontmatters

  • Added lower-triangle annotation for Fst heatmaps in the malaria vector genomics library
  • Fixed a CNV data-check indentation bug causing silent failures

Currently Active

  • graph_weather #3 / #238 — adaptive meshing for regional NWP. Currently running a controlled ablation on whether the mesh message-passing earns its parameters against a graph-free baseline; publishing the numbers either way.
  • krkn-chaos/krkn-ai #389 — Elasticsearch config for composite chaos scenarios
  • malariagen-data-python #1310 — haplotype network mixin

Projects

ProjectWhat it doesHighlights
Climate-Risk Analyst AgentliveLangGraph agent returning typed, cited climate-risk reports — or refusing when the evidence is thin105-question SHA-frozen held-out set: recall@3 87%, citation validity 94%, zero false answers. 238 tests, ~$0.001/report, deployed on Cloud Run
Incident Evidence CompilerRoot-cause investigation service where the model proposes and deterministic code decidesRCAEval RE2-OB: top-1 0.932, MRR 0.959. Content-addressed evidence ledger, Postgres SKIP LOCKED worker queue, 304 hermetic tests, mypy strict
Weather TransformerPhysics-aware Transformer for 6-hour weather forecasting on ERA5Written from scratch in PyTorch — no nn.MultiheadAttention. 74 tests, beats persistence by 27% RMSE on a 1,316-sample held-out set
Fairness-Aware Credit RiskFour bias-mitigation interventions measured against a tuned baseline under identical conditions, on two credit datasetsNo intervention helped — and the reasons differ per dataset. Bootstrap intervals on every metric, 212 tests, SHAP adverse-action reason codes, model card. Includes a published self-audit of three defects in my own earlier version, including a proxy leak where dropping gender did not remove sex from the model. Every published number regenerated from an artifact, enforced by a test
Complaint IntelligenceliveRAG and retrieval benchmark over CFPB consumer complaints200K CFPB complaints processed end to end. MiniLM vs BGE, vector vs BM25 vs hybrid vs rerank, KMeans vs BERTopic — every component chosen on measured results, not defaults
LLaMA Task AgentLoRA fine-tuned LLaMA-3.1-8B for agentic tool executionGenerates valid function calls with type-safe args from natural language
Bio Publication AnalyzerSciBERT + TF-IDF classifier for genomics articles81 tests, Europe PMC pipeline end to end

Tech Stack


GitHub Stats


Pinned Loading

  1. climate-risk-agentclimate-risk-agentPublic

    Open-source agentic climate-risk analyst: grounded, cited, structured risk reports from live weather + IPCC docs.

    Python 1

  2. Incident-evidence-compilerIncident-evidence-compilerPublic

    An LLM is allowed to guess; only deterministic code is allowed to decide. Evidence-grounded incident investigation: telemetry becomes a content-addressed ledger, Gemini proposes restricted hypothes…

    Python 1

  3. weather-transformer-scratchweather-transformer-scratchPublic

    Physics-aware Vision Transformer for weather forecasting built from scratch in PyTorch | AI for Science

    Jupyter Notebook 1

  4. fairness-credit-riskfairness-credit-riskPublic

    Fairness-aware credit risk modeling with bias detection, AutoML & AI Fairness 360

    Python 1

  5. complaint-intelligence-systemcomplaint-intelligence-systemPublic

    RAG pipeline for analyzing 12M+ customer complaints using FAISS, Sentence-Transformers & Gemini AI

    Jupyter Notebook 1

  6. llama-task-agentllama-task-agentPublic

    Fine-tuned LLaMA-3.1-8B task agent with LoRA for reliable tool execution

    Jupyter Notebook 1