Skip to content

add techy-temporary#222

Merged
yashdev9274 merged 1 commit into
mainfrom
supercode-cli
Jul 20, 2026
Merged

add techy-temporary#222
yashdev9274 merged 1 commit into
mainfrom
supercode-cli

Conversation

@yashdev9274

@yashdev9274 yashdev9274 commented Jul 20, 2026

Copy link
Copy Markdown
Owner

Description

Please include a summary of the change and which issue is fixed.

Fixes #(issue)

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Refactor (no functional changes)

How Has This Been Tested?

Please describe the tests that you ran to verify your changes.

  • bun test passes
  • bun run typecheck passes
  • bun run lint passes (if applicable)

Checklist:

  • My code follows the project's style guidelines
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works

Summary by CodeRabbit

  • New Features
    • Added a complete data science and machine learning interview-preparation study guide.
    • Added chapters covering data science, machine learning, deep learning, NLP, LLMs, RAG, graph-based AI, fine-tuning, and evaluation.
    • Added practical examples, formulas, interview questions, and explanations for key concepts.
    • Added a centralized concept reference with topic coverage statuses and links.
    • Added a study guide index and standardized format for navigating the material.

@vercel

vercel Bot commented Jul 20, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
supercli Ready Ready Preview, Comment Jul 20, 2026 2:31pm
supercli-client Ready Ready Preview, Comment Jul 20, 2026 2:31pm
supercli-docs Ready Ready Preview, Comment Jul 20, 2026 2:31pm

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Your trial has ended. Reactivate Greptile to resume code reviews.

@coderabbitai

coderabbitai Bot commented Jul 20, 2026

Copy link
Copy Markdown

Review Change Stack

Walkthrough

Adds a linked Markdown interview-preparation library covering data science, machine learning, deep learning, NLP, LLMs, RAG, graph ML, fine-tuning, evaluation, and hallucination detection.

Changes

Study Guide Content

Layer / File(s) Summary
Guide structure and navigation
techy/index.md
Adds the guide title, file index, and standardized concept template.
Data foundations and infrastructure
techy/01-data-science.md
Covers data engineering, warehousing, pipelines, lakes, governance, metadata, quality, versioning, and feature stores.
Data science methods and workflow
techy/01-data-science.md
Covers A/B testing, semi-supervised and reinforcement learning, bias, imbalance, EDA, statistical tests, and workflow stages.
Core machine learning models
techy/02-machine-learning.md
Documents regression, trees, ensembles, nearest neighbors, SVMs, clustering, PCA, and gradient boosting.
Machine learning evaluation and tuning
techy/02-machine-learning.md
Documents evaluation metrics, specialized algorithms, anomaly detection, stacking, learning curves, tuning, and log loss.
Deep learning and NLP foundations
techy/03-deep-learning-and-nlp.md
Documents neural architectures, Transformers, NLP representations, pretrained models, training methods, vision architectures, and NLP tasks.
LLM, RAG, prompting, and agents
techy/05-llm-rag-graph.md
Documents LLM behavior, retrieval pipelines, prompting, agent tooling, decoding, orchestration, and RAG extensions.
Graph ML, adaptation, and LLM evaluation
techy/05-llm-rag-graph.md
Documents knowledge graphs, GNNs, fine-tuning, preference optimization, evaluation frameworks, and hallucination detection.
Concept reference index
techy/concept-reference.md
Adds cross-linked concept tables, coverage indicators, and prioritized missing concepts.

Estimated code review effort: 3 (Moderate) | ~25 minutes

Poem

I’m a rabbit with notes in a row,
Through models and prompts I now hop and go.
From graphs to RAG, each page sprouts bright,
With interview questions tucked in tight.
Carrots of knowledge—what a delightful sight!

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Title check ❓ Inconclusive The title is vague and does not describe the added study-guide documents. Rename it to reflect the main change, such as adding data science and machine learning study guides.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch supercode-cli

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@yashdev9274
yashdev9274 merged commit 4b3a491 into main Jul 20, 2026
4 of 8 checks passed

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note

Due to the large number of review comments, Critical severity comments were prioritized as inline comments.

🟠 Major comments (27)
techy/01-data-science.md-464-466 (1)

464-466: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Show SMOTE only inside the training pipeline.

The example does not state that SMOTE must be applied after splitting and independently within each training fold. Resampling the full dataset leaks information and produces optimistic evaluation results; use an imblearn pipeline and retain the natural class distribution in the test set. (imbalanced-learn.org)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/01-data-science.md` around lines 464 - 466, Update the credit-card
fraud SMOTE example to specify that data is split before resampling, with SMOTE
applied only to each training fold through an imblearn pipeline. Preserve the
test set’s natural class distribution and clarify that reported metrics come
from evaluation on the untouched test data.

Source: MCP tools

techy/index.md-9-11 (1)

9-11: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Align the index links with the chapter filenames.

The supplied stack identifies techy/03-deep-learning-and-nlp.md, but this index links to 03-deep-learning.md and 04-nlp.md. Update the table to match the actual chapter layout before merging.

Proposed fix
-| 3 | Deep Learning | [03-deep-learning.md](./03-deep-learning.md) |
-| 4 | Natural Language Processing | [04-nlp.md](./04-nlp.md) |
+| 3 | Deep Learning and NLP | [03-deep-learning-and-nlp.md](./03-deep-learning-and-nlp.md) |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/index.md` around lines 9 - 11, Update the chapter links in the index
table so the Deep Learning and Natural Language Processing entries point to the
actual combined chapter file techy/03-deep-learning-and-nlp.md, and remove the
outdated separate 03-deep-learning.md and 04-nlp.md references while preserving
the remaining LLMs link.
techy/01-data-science.md-252-253 (1)

252-253: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Clarify dbt lineage scope in this answer
In techy/01-data-science.md:252-253, dbt’s native column-level lineage is based on SELECT expressions in compiled SQL; it does not generally infer lineage from JOIN conditions or filters. If you want to mention that behavior, frame it as a limitation or attribute it to an external parser/catalog tool instead.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/01-data-science.md` around lines 252 - 253, Update the dbt lineage
answer to state that native column-level lineage is derived from SELECT
expressions in compiled SQL. Remove the claim that dbt infers column lineage
from JOIN conditions, or clearly attribute that capability to an external parser
or catalog tool as a limitation of dbt’s native lineage.

Source: MCP tools

techy/01-data-science.md-520-535 (1)

520-535: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Correct the Shapiro-Wilk thresholds and kurtosis notation. Replace the fixed n < 20 / n = 20–2,000 guidance with SciPy’s documented caveat that p-values may be unreliable for N > 5000, and rewrite the kurtosis rule to clearly use either Pearson kurtosis or excess kurtosis consistently.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/01-data-science.md` around lines 520 - 535, Update the Shapiro-Wilk
guidance in the sample-size discussion and related interview answer to state
SciPy’s documented p-value reliability caveat for N > 5,000 instead of
presenting fixed n < 20 and n = 20–2,000 thresholds. Revise every kurtosis
reference in this section to use one clearly identified convention
consistently—Pearson kurtosis near 3 or excess kurtosis near 0—and adjust the
stated rule accordingly.

Source: MCP tools

techy/02-machine-learning.md-105-107 (1)

105-107: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Correct the Random Forest variance formula.

σ²/ρ has the wrong behavior: lowering tree correlation would increase the stated variance. For B trees, use σ²[ρ + (1−ρ)/B] (under the usual equal-variance/equal-correlation simplification), which approaches σ²/B for independent trees and ρσ² as B grows.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/02-machine-learning.md` around lines 105 - 107, Update the Random
Forest variance expression in the paragraph describing ensemble averaging to use
σ²[ρ + (1−ρ)/B], defining B as the number of trees if needed, and retain the
stated limiting behavior for independent trees and large ensembles.
techy/02-machine-learning.md-342-343 (1)

342-343: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Correct the MAPE limitation.

MAPE is not asymmetric for equal absolute deviations from the same actual value. Its key limitations are undefined behavior at yᵢ = 0, extreme weighting of small actuals, and sensitivity to the actual-value scale.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/02-machine-learning.md` around lines 342 - 343, Update the MAPE
description in the regression metrics paragraph to remove the claim that it is
asymmetric. Retain the stated formula and document its actual limitations:
undefined behavior when yᵢ = 0, extreme weighting of small actual values, and
sensitivity to actual-value scale.
techy/02-machine-learning.md-45-45 (1)

45-45: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Do not describe OvR as handling multilabel classes directly.

OvR assumes one class is selected among mutually exclusive classes. For non-mutually-exclusive labels, describe a multilabel setup with independently thresholded classifiers instead.

Also applies to: 59-60

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/02-machine-learning.md` at line 45, Update the multi-class
classification description near the OvR and Softmax discussion to state that OvR
assumes mutually exclusive classes; for non-mutually-exclusive labels, describe
multilabel classification as independent binary classifiers with separate
thresholds. Remove the claim that OvR directly handles non-mutually-exclusive
classes while preserving the existing Softmax explanation.
techy/02-machine-learning.md-627-631 (1)

627-631: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Correct the log-loss example and baseline.

For a binary null model predicting p=0.25, log loss is -[0.25 log(0.25)+0.75 log(0.75)] ≈ 0.562, not 1.39. The model comparisons also cannot be derived from class-average probabilities alone; log loss must be averaged per example (or from average log probabilities), since log(mean(p)) is not the mean log loss.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/02-machine-learning.md` around lines 627 - 631, Correct the log-loss
example by replacing the binary null-model calculation with the per-example
baseline formula using the 25% positive and 75% negative class proportions,
yielding approximately 0.562. Revise the Model A/B/C comparison wording and
values so they are not calculated from class-average probabilities; state that
log loss must use per-example predicted probabilities or average log
probabilities, and avoid presenting unsupported numeric results from those
averages.
techy/02-machine-learning.md-49-49 (1)

49-49: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Fix the logistic-regression example’s probability and coefficient interpretation.

With z = 17, P(default) = sigmoid(17) ≈ 0.99999996, not 0.00000004. The example’s coefficients also imply that higher credit score increases default odds while higher DTI decreases them; reverse the signs or revise the narrative if the intended behavior is the opposite.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/02-machine-learning.md` at line 49, Correct the Loan default prediction
example’s sigmoid calculation so z = 17 yields P(default) ≈ 0.99999996. Align
the coefficient interpretation with the displayed signs: credit_score increases
default odds by e^(0.03), while DTI_ratio decreases them by e^(-0.05);
alternatively, revise the coefficients if the narrative intends the opposite
behavior.
techy/02-machine-learning.md-517-519 (1)

517-519: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Recalculate and reconcile the Isolation Forest example.

The example is internally inconsistent: contamination=0.0017 is not the same as contamination="auto"; 2^(-4.2/10.5) is approximately 0.76, not 0.87; and 359 true positives plus 227 false positives gives precision near 61%, not 68%. Recompute the metrics from one consistent configuration.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/02-machine-learning.md` around lines 517 - 519, Recalculate the entire
Isolation Forest credit-card fraud example around the stated contamination
setting, ensuring the configuration uses either 0.0017 or "auto" consistently.
Correct the anomaly-score arithmetic and reconcile recall, precision, true
positives, false positives, and false-positive rate so all reported metrics
derive from the same results; update the comparative claims if those results
change.
techy/02-machine-learning.md-8-8 (1)

8-8: 🎯 Functional Correctness | 🟠 Major | 🏗️ Heavy lift

Qualify the OLS closed-form formula.

(XᵀX)⁻¹ is undefined when features are linearly dependent, and the displayed equation only includes an intercept if X has already been augmented with a column of ones. State these assumptions or use the Moore–Penrose pseudoinverse as the general formulation.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/02-machine-learning.md` at line 8, Update the linear regression
explanation around the OLS solution to either state that X has full column rank
and includes an intercept column of ones, or replace the inverse-based
expression with the Moore–Penrose pseudoinverse formulation. Ensure the
displayed formula accurately covers linearly dependent features and intercept
handling.
techy/02-machine-learning.md-74-78 (1)

74-78: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Qualify categorical and missing-value support. The “naturally handle categorical features” and surrogate-split claims are implementation-dependent; scikit-learn’s DecisionTree* needs numeric input and doesn’t provide native missing-value/surrogate-split handling. Narrow the wording or add an encoding/imputation caveat.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/02-machine-learning.md` around lines 74 - 78, Update the decision-tree
discussion to qualify categorical-feature and missing-value handling: avoid
claiming native support, note that scikit-learn’s DecisionTree implementations
require numeric encoding and appropriate missing-value treatment, and frame
surrogate splits as implementation-dependent rather than generally available.
techy/05-llm-rag-graph.md-328-328 (1)

328-328: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Do not teach logit bias as a JSON-enforcement mechanism.

Biasing brace, quote, or punctuation tokens cannot guarantee grammatical JSON because tokenization and contextual probabilities still permit invalid sequences. The sample payload also contains an empty token-ID key. Recommend constrained decoding or structured-output APIs, followed by parsing and validation.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/05-llm-rag-graph.md` at line 328, Revise the logit-bias guidance in the
surrounding JSON-output section: remove the recommendation to force JSON by
biasing punctuation or natural-language tokens and remove the invalid empty
token-ID example. Instead, recommend constrained decoding or structured-output
APIs, then explicitly parse and validate the resulting output.
techy/05-llm-rag-graph.md-92-92 (1)

92-92: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Distinguish syntactically valid JSON from schema-valid output.

The text treats JSON mode and constrained decoding as interchangeable guarantees. Valid JSON does not necessarily satisfy the intended schema; production guidance should require server-side parsing and schema validation even when structured-output features are enabled.

Also applies to: 118-120

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/05-llm-rag-graph.md` at line 92, Update the structured-output guidance
around the JSON-mode and constrained-decoding discussion to distinguish
syntactically valid JSON from schema-valid output. Require server-side parsing
and schema validation after generation, even when structured-output features are
enabled, and avoid claiming these mechanisms alone guarantee the intended
schema.
techy/05-llm-rag-graph.md-62-62 (1)

62-62: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Remove the claim that citations make hallucinations impossible.

A prompt requiring citations can reduce hallucinations but cannot guarantee that the model will only state supported facts or produce valid citations. Replace this with a probabilistic claim and recommend faithfulness/citation validation.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/05-llm-rag-graph.md` at line 62, Update the final sentence of the
Company policy Q&A system description to remove the guarantee that citations
prevent hallucinations. State instead that citation requirements can reduce
unsupported claims but do not guarantee faithfulness or valid citations, and
recommend validating answer faithfulness and citations against the retrieved PDF
context.
techy/05-llm-rag-graph.md-963-965 (1)

963-965: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Correct the IA³ parameter-count example.

IA³ scales key, value, and feed-forward activations; the feed-forward vector is generally larger than the hidden dimension. Therefore 3 × num_layers × hidden_dim and the resulting 393K figure are not generally valid for a 7B LLaMA-style model. Compute the count from the actual K/V/FFN dimensions.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/05-llm-rag-graph.md` around lines 963 - 965, Correct the IA³
parameter-count explanation and LLaMA-7B example by summing the per-layer key,
value, and feed-forward scaling-vector dimensions rather than using 3 ×
num_layers × hidden_dim. Use the model’s actual K/V and FFN dimensions to
recalculate the trainable-parameter total and update the related
percentage/example figures consistently.
techy/05-llm-rag-graph.md-214-214 (1)

214-214: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Make the fine-tuning memory figures internally consistent.

Line 214 gives approximately 56 GB for 7B full fine-tuning, while the comparison table gives approximately 120 GB for the same FP16 case. These figures depend on weights, gradients, optimizer states, activations, sequence length, and checkpointing; define the accounting assumptions and use one consistent estimate.

Also applies to: 1008-1012

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/05-llm-rag-graph.md` at line 214, The full fine-tuning memory estimates
in the prose and comparison table are inconsistent. Update the fine-tuning
discussion around the 7B and 70B figures and the corresponding table entries to
state explicit accounting assumptions, then use one consistent FP16 training
estimate that includes the same components—weights, gradients, optimizer states,
activations, sequence length, and checkpointing—throughout.
techy/05-llm-rag-graph.md-766-766 (1)

766-766: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Correct the Node2Vec BFS/DFS mapping. q < 1 drives outward, DFS-like walks, while q > 1 keeps walks local and BFS-like. p only discourages immediate backtracking; it doesn’t flip BFS/DFS behavior on its own. The current p > 1 + q < 1 = BFS-like phrasing is inverted.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/05-llm-rag-graph.md` at line 766, Update the Node2Vec explanation so q
< 1 is described as promoting outward, DFS-like exploration and q > 1 as
favoring local, BFS-like neighborhoods. Clarify that p only controls immediate
backtracking and does not independently determine BFS/DFS behavior.
techy/05-llm-rag-graph.md-262-262 (1)

262-262: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Exclude Context Recall from the reference-free claim
techy/05-llm-rag-graph.md:262 — The lead-in says all four RAGAS metrics are computed without ground-truth answers, but Context Recall uses a reference answer/reference contexts. Reword that sentence so it only covers the metrics that are actually reference-free.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/05-llm-rag-graph.md` at line 262, The RAGAS metric overview incorrectly
describes all four metrics as reference-free. Update the lead-in sentence in the
RAGAS description to exclude Context Recall from the reference-free claim, while
preserving the existing explanations of all four metrics and their evaluation
requirements.
techy/05-llm-rag-graph.md-20-20 (1)

20-20: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Avoid presenting GPT-4’s parameter count and context window as facts. OpenAI doesn’t disclose a 1.7T parameter count, and GPT-4 was documented with 8K/32K context windows, not 100K. Use a version-specific, sourced example or mark these figures as illustrative.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/05-llm-rag-graph.md` at line 20, Update the GPT-4 description in the
introductory comparison to remove the unsupported 1.7-trillion parameter and
100K context-window claims; replace them with documented, version-specific
figures and cite their source, or clearly label the values as illustrative
rather than factual.
techy/03-deep-learning-and-nlp.md-791-791 (1)

791-791: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Reverse the perplexity direction.

Catastrophic forgetting worsens general language modeling, so perplexity on general text should increase, not “drop significantly.”

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` at line 791, Correct the perplexity
statement in the catastrophic-forgetting explanation so that fine-tuning causes
perplexity on general text to increase significantly, while leaving the
surrounding causes and prevention strategies unchanged.
techy/03-deep-learning-and-nlp.md-937-937 (1)

937-937: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Do not call GNMT a Transformer system.

The original GNMT architecture is an 8-layer LSTM encoder/decoder with attention and residual connections. Transformer-based systems should be described separately. (arxiv.org)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` at line 937, Revise the paragraph’s GNMT
description to identify it as an 8-layer LSTM encoder/decoder architecture with
attention and residual connections, not as a Transformer system. Keep the
Transformer discussion separate and retain the existing GNMT engineering details
and translation-error result where accurate.

Source: MCP tools

techy/03-deep-learning-and-nlp.md-1044-1044 (1)

1044-1044: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Do not use [MASK] in a next-token perplexity example.

[MASK] implies a masked-language-model objective, while autoregressive perplexity evaluates the probability of the actual next token. Either remove [MASK] or explicitly label this as a masked-token example.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` at line 1044, Update the next-token
prediction example to remove “[MASK]” from the sequence, while preserving the
probability and perplexity discussion; alternatively, explicitly relabel the
example as masked-token prediction if the placeholder must remain.
techy/03-deep-learning-and-nlp.md-576-576 (1)

576-576: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Correct the GroupNorm endpoint comparison.

GroupNorm with one group is LayerNorm-like, but GroupNorm with one channel per group is InstanceNorm-like—not BatchNorm. BatchNorm normalizes using batch statistics, whereas GroupNorm is independent of batch size. (arxiv.org)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` at line 576, Correct the Group
Normalization comparison in the normalization discussion: retain that one group
is LayerNorm-like, but replace the “H groups of size 1” BatchNorm comparison
with the accurate InstanceNorm-like endpoint. Clarify that GroupNorm does not
use batch statistics and is independent of batch size.

Source: MCP tools

techy/03-deep-learning-and-nlp.md-516-520 (1)

516-520: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Make the dropout scaling convention consistent.

Line 516 says to scale outputs by (1-p) at inference, while line 520 correctly describes inverted dropout, which scales retained activations during training and requires no inference scaling. Choose one convention and keep the equations consistent. (jmlr2020.csail.mit.edu)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` around lines 516 - 520, Update the
inference-time description in the dropout discussion to consistently use the
inverted-dropout convention established by the training equation: state that
dropout is disabled with no additional output scaling during inference, and
remove the conflicting `(1-p)` scaling claim while preserving the remaining
explanation.

Source: MCP tools

techy/03-deep-learning-and-nlp.md-415-415 (1)

415-415: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Bias-correct both Adam moments in the update formula.

The displayed update uses (m_t) but only bias-corrects (v_t). The standard Adam update uses (\hat m_t / (\sqrt{\hat v_t}+\epsilon)). (alphaxiv.org)

Proposed correction
- θ_t = θ_{t-1} - η·m_t/(√v̂_t + ε)
+ θ_t = θ_{t-1} - η·m̂_t/(√v̂_t + ε)
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` at line 415, Update the Adam update
formula in the optimizer description to use the bias-corrected first moment m̂_t
in the numerator, alongside the existing bias-corrected second moment v̂_t in
the denominator. Keep the surrounding moment definitions and explanation
unchanged.

Source: MCP tools

techy/03-deep-learning-and-nlp.md-601-601 (1)

601-601: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Avoid presenting He initialization as the default for ViT/Transformer models
PyTorch’s reference nn.Transformer uses Xavier uniform for multidimensional parameters, and Vision Transformer initializations vary by implementation; He init is not the general default here.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` at line 601, Revise the He initialization
paragraph to remove the claim that He initialization is standard or generally
default for Vision Transformers and modern Transformer architectures. State that
initialization varies by implementation, noting Xavier uniform as used by
PyTorch’s reference nn.Transformer where appropriate, while preserving the
ReLU-specific guidance.

Source: MCP tools

🟡 Minor comments (28)
techy/index.md-15-15 (1)

15-15: 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Specify the fenced-block language.

This triggers markdownlint MD040.

-```
+```markdown
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/index.md` at line 15, Update the fenced code block in the Markdown
content to specify its language as markdown, using the existing empty block and
preserving its contents.

Source: Linters/SAST tools

techy/01-data-science.md-163-167 (1)

163-167: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Use version-neutral SLA language or scope this to Airflow 2. Airflow 3 removed legacy SLAs and replaced them with Deadline Alerts, so this should avoid “SLA compliance” wording unless it is explicitly limited to Airflow 2.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/01-data-science.md` around lines 163 - 167, Update the orchestration
paragraph’s “SLA compliance” reference to version-neutral deadline/alert
monitoring, or explicitly scope the SLA terminology to Airflow 2; keep the
surrounding pipeline monitoring examples unchanged.

Source: MCP tools

techy/01-data-science.md-341-356 (1)

341-356: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Correct the β/power notation and sample-size formula.

β is the Type II error rate, so power = 1 − β; with 80% power, β = 0.20, not 0.80. The sample-size formula should also use Z_(1−β) (or Z_power) instead of Z_β.

Suggested edit
- significance level α = 0.05 (5% chance of Type I error — false positive), power β = 0.80 (20% chance of Type II error — false negative)
+ significance level α = 0.05 (5% chance of Type I error — false positive), Type II error β = 0.20, and power 1 − β = 0.80
...
- Formula: n = (Z_α/2 + Z_β)²
+ Formula: n = (Z_(1−α/2) + Z_(1−β))²
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/01-data-science.md` around lines 341 - 356, Correct the A/B testing
notation so β is identified as the 20% Type II error rate and power as 1 − β =
0.80. In the sample-size formula under the interview question, replace Z_β with
the quantile for 1 − β, such as Z_(1−β) or Z_power, while preserving the
surrounding explanation and calculations.

Source: MCP tools

techy/01-data-science.md-295-297 (1)

295-297: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Replace dvc run with dvc stage add in the example. dvc run is deprecated, so this copy-paste command should use the current DVC stage command.

Suggested edit
-`dvc run -n train -d data/processed_features.csv -m metrics.json python train.py`.
+`dvc stage add -n train -d data/processed_features.csv -m metrics.json python train.py`.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/01-data-science.md` around lines 295 - 297, Update the DVC command in
the churn prediction example to use the current `dvc stage add` syntax instead
of deprecated `dvc run`, preserving the existing stage name, dependencies,
metrics output, and training command.

Source: MCP tools

techy/01-data-science.md-79-79 (1)

79-79: 🔒 Security & Privacy | 🟡 Minor | ⚡ Quick win

Tighten the GDPR wording

  • techy/01-data-science.md#L79-L79: pseudonymization reduces exposure risk, but it doesn’t make ETL an automatic GDPR-compliance guarantee or ensure PII can never be exposed.
  • techy/01-data-science.md#L193-L193: GDPR doesn’t impose a fixed 7-year retention period; frame this as a policy or jurisdiction-specific rule.
  • techy/01-data-science.md#L200-L201: erasure has legal exceptions, and backup handling depends on the backup/keying design; key rotation isn’t universally sufficient.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/01-data-science.md` at line 79, Tighten the GDPR statements at
techy/01-data-science.md lines 79-79, 193-193, and 200-201: clarify that
pseudonymization reduces exposure risk but does not guarantee GDPR compliance or
prevent PII exposure; present seven-year retention as a policy- or
jurisdiction-specific rule rather than a GDPR requirement; and note that erasure
has legal exceptions and backup treatment depends on the backup and keying
design, without implying key rotation is universally sufficient.

Source: MCP tools

techy/concept-reference.md-30-30 (1)

30-30: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Point “Supervised Learning” to the supervised-learning section.

This row links to #semi-supervised-learning; the supplied target at techy/01-data-science.md:364-374 is explicitly a Semi-supervised Learning section. Readers following the Supervised Learning entry therefore land on the wrong concept. Link to the actual supervised-learning section, or mark supervised learning as not covered.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/concept-reference.md` at line 30, Update the Supervised Learning row in
the concept reference table so its link targets the actual supervised-learning
section in 01-data-science.md rather than `#semi-supervised-learning`; if no
supervised-learning section exists, mark the concept as not covered instead.
techy/concept-reference.md-49-49 (1)

49-49: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Do not classify PCA as feature selection.

PCA performs dimensionality reduction through feature extraction; it does not select a subset of the original features. This also conflicts with the missing-concepts entry at Line 468. Link Feature Selection to a genuine feature-selection section or mark it as uncovered.

Proposed correction
-| Feature Selection | PCA as dim reduction [02-machine-learning.md](./02-machine-learning.md#pca-principal-component-analysis) | [02](./02-machine-learning.md#pca-principal-component-analysis) |
+| Feature Selection | Not covered as a dedicated section | [02](./02-machine-learning.md) |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/concept-reference.md` at line 49, Update the “Feature Selection” entry
in the concept reference table so it no longer links to the PCA section; link it
to a genuine feature-selection section if one exists, otherwise mark the concept
as uncovered, keeping PCA classified only as feature extraction/dimensionality
reduction.
techy/02-machine-learning.md-109-109 (1)

109-109: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Avoid calling OOB error unbiased.

Describe OOB error as an approximately independent, built-in estimate of generalization performance; its bias and variance depend on the dataset and forest configuration.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/02-machine-learning.md` at line 109, Revise the Random Forest OOB error
description to remove the claim that it is an “unbiased” estimate. Describe
aggregated OOB predictions as an approximately independent, built-in estimate of
generalization performance, and note that its bias and variance depend on the
dataset and forest configuration.
techy/02-machine-learning.md-155-156 (1)

155-156: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Clarify zero handling in XGBoosttechy/02-machine-learning.md:155-156: zero is not inherently missing here; only sparse omissions or the configured missing sentinel are skipped. Rephrase this as sparse-input handling, not as “treats zeros as missing.”

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/02-machine-learning.md` around lines 155 - 156, Update the XGBoost
explanation near the sparsity-aware learning discussion to remove the claim that
zeros are inherently treated as missing. Clarify that sparse omissions, or
values matching the configured missing sentinel, are skipped while explicit zero
values remain valid unless configured otherwise.
techy/05-llm-rag-graph.md-310-314 (1)

310-314: 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Resolve the repeated heading warnings.

The reusable ### Theory & Explanation, ### Example, and ### Interview Questions headings are repeated throughout the document, triggering MD024 and producing duplicate anchors. Use unique section-prefixed headings or configure the linter intentionally if duplicate anchors are acceptable.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/05-llm-rag-graph.md` around lines 310 - 314, Update the repeated Theory
& Explanation, Example, and Interview Questions headings throughout the document
to include a unique section-specific prefix, preserving their hierarchy and
content while eliminating duplicate anchors and MD024 warnings.

Source: Linters/SAST tools

techy/05-llm-rag-graph.md-602-609 (1)

602-609: 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Add language identifiers to both fenced code blocks.

The extraction and QA examples use unlabeled fences, triggering MD040. Mark them as text or json as appropriate.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/05-llm-rag-graph.md` around lines 602 - 609, Add language identifiers
to both fenced code blocks in the extraction and QA examples: label
schema/instruction text fences as text and JSON-output fences as json,
preserving their contents.

Source: Linters/SAST tools

techy/05-llm-rag-graph.md-346-346 (1)

346-346: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Correct the beam-search complexity claim.

Line 341 already gives the approximate cost as O(b × vocabulary × sequence_length), but this line calls the cost quadratic in beam width. Replace “quadratic” with “roughly linear in beam width, subject to implementation details.”

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/05-llm-rag-graph.md` at line 346, Update the beam-search cost
description in the paragraph beginning “Wider beams” to replace the “quadratic
computational cost” claim with “roughly linear in beam width, subject to
implementation details,” while preserving the surrounding quality, diversity,
repetition, and task guidance.
techy/05-llm-rag-graph.md-174-174 (1)

174-174: 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Escape the matrix index expression.

Markdown parses A[i][j] as a reference-style link whose label is j, producing the reported MD052 warning and potentially rendering the formula incorrectly. Wrap the expression in backticks or escape the brackets.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/05-llm-rag-graph.md` at line 174, In the graph concepts description,
update the adjacency-matrix expression in the sentence defining A so `A[i][j]`
is rendered as literal text by wrapping it in inline code or escaping its
brackets, while preserving the surrounding explanation.

Source: Linters/SAST tools

techy/05-llm-rag-graph.md-376-376 (1)

376-376: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Fix the sliding-window attention direction. Token 1 cannot attend to token 4097; token 4097 attends backward within its window, and that information can propagate forward across layers.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/05-llm-rag-graph.md` at line 376, Correct the sliding-window attention
explanation in the paragraph about Mistral: state that token 4097 attends
backward to token 1 within its window, and that information propagates forward
across layers; do not claim token 1 attends to token 4097.
techy/05-llm-rag-graph.md-918-918 (1)

918-918: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Correct the PageRank example
Under the stated formula with standard dangling-node handling, the fixed point is roughly A: 0.161, B: 0.298, C: 0.415, D: 0.126, so the current hard-coded scores and “B is most important” conclusion are off. Either show the calculation and dangling-node convention used, or remove the scores.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/05-llm-rag-graph.md` at line 918, Correct the PageRank example by
removing the inaccurate hard-coded scores and “B is most important” conclusion,
or replace them with values derived from the stated formula using an explicitly
described standard dangling-node convention. If retaining scores, show enough
calculation to support the fixed point approximately A: 0.161, B: 0.298, C:
0.415, D: 0.126.
techy/03-deep-learning-and-nlp.md-736-736 (1)

736-736: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Fix the bottleneck-computation claim.

With 256 input/output channels and a 64-channel bottleneck, a standard two-layer (3\times3) block costs about 1.18M multiply-add weights, while the (1\times1)-(3\times3)-(1\times1) bottleneck costs about 69.6K—roughly 17× fewer, not 4×.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` at line 736, Update the bottleneck
computation statement in the ResNet-50 discussion to say it reduces computation
by roughly 17×, replacing the inaccurate 4× claim. Keep the surrounding
architecture and performance details unchanged.
techy/03-deep-learning-and-nlp.md-1049-1049 (1)

1049-1049: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Correct the BPC formula’s log-base conversion.

If the logarithm is natural log, dividing by character count yields nats per character, not bits per character. Convert by dividing by ln(2) or use base-2 logarithms.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` at line 1049, Update the BPC definition in
the perplexity/tokenization explanation so it uses base-2 logarithms or divides
the natural-log negative log-likelihood by ln(2), ensuring the result is bits
per character rather than nats per character.
techy/03-deep-learning-and-nlp.md-961-961 (1)

961-961: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Remove the “guaranteed factual correctness” claim for extractive summaries.

Extractive summarization avoids generating new wording, but selected sentences can still be misleading, incomplete, or incorrect when removed from context. Replace this with a weaker claim such as “lower risk of introducing novel factual content.”

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` at line 961, Update the extractive
summarization advantages in the paragraph describing TextRank and BERT-based
sentence scoring: replace the “guaranteed factual correctness” claim with a
qualified statement such as lower risk of introducing novel factual content,
while preserving the surrounding fluency and disadvantage discussion.
techy/03-deep-learning-and-nlp.md-685-685 (1)

685-685: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Select anomaly thresholds on held-out validation data.

Deriving the threshold from the training reconstruction-error distribution can produce an overly optimistic cutoff, especially if anomalies or memorized examples are present. Use a clean validation/calibration set or explicitly state the assumption.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` at line 685, Update the autoencoder-based
anomaly detection paragraph to recommend selecting the reconstruction-error
threshold using a clean held-out validation or calibration set instead of the
training distribution. Revise the MSE example accordingly, or explicitly state
the assumption that the training set is clean and representative when retaining
it.
techy/03-deep-learning-and-nlp.md-1061-1061 (1)

1061-1061: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Remove the ReLU explanation for embedding signs.

GloVe and BERT embeddings are not generally constrained to the positive orthant, and their components are not positive “due to ReLU.” Negative cosine similarities are possible and should be explained in terms of the embedding model, not an assumed activation function.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` at line 1061, Update the cosine similarity
explanation near the NLP embedding discussion to remove the claim that
embeddings are usually positive due to ReLU activations. State instead that
cosine similarity distributions depend on the embedding model, while preserving
that negative values are possible.
techy/03-deep-learning-and-nlp.md-1077-1077 (1)

1077-1077: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Fix the cosine-distance arithmetic.

For (B=(1,1)) and (C=(0,1)), (\cos(B,C)=1/\sqrt2), so the distance is approximately 0.29, not 0.50. The triangle-inequality counterexample still works after correcting the value.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` at line 1077, Correct the cosine-distance
calculation for vectors B and C in the example: use cos(B,C) = 1/√2 and cosine
distance ≈ 0.29 instead of 1/2 and 0.50. Update the triangle-inequality sum
accordingly while preserving the conclusion that the example violates the
inequality.
techy/03-deep-learning-and-nlp.md-46-46 (1)

46-46: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Do not describe GELU as dropout.

GELU is the deterministic activation (x\Phi(x)). The original paper motivates it using an input-dependent stochastic gate, but GELU itself does not perform dropout or stochastic regularization. (arxiv.org)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` at line 46, Update the GELU description to
state that it is the deterministic activation x·Φ(x), and remove the claim that
it combines dropout or provides stochastic regularization. You may mention the
original paper’s stochastic-gating motivation only if clearly distinguished from
GELU’s actual behavior.

Source: MCP tools

techy/03-deep-learning-and-nlp.md-832-843 (1)

832-843: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Clarify that CRF transitions are learned scores, not universal BIO rules.

A B-PER tag may legally be followed by B-ORG when two entities are adjacent; it is not restricted to I-PER or O. Explain that CRFs learn transition preferences, unless explicit BIO constraints are added during decoding.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` around lines 832 - 843, Correct the
BiLSTM-CRF explanation and the “Why does the CRF layer improve NER” answer to
describe transition values as learned preferences rather than universal BIO
validity rules. Explicitly note that adjacent entities such as B-PER followed by
B-ORG can be legal, and state that hard BIO constraints apply only if explicitly
added during decoding; revise the example accordingly.
techy/03-deep-learning-and-nlp.md-236-236 (1)

236-236: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Do not call the displayed IDF formula smoothed.

log(N / df) is the unsmoothed formula. If smoothing is intended, show the actual smoothed expression; also, df = 0 is not a division-by-zero case for terms already present in the vocabulary.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` at line 236, Correct the TF-IDF
explanation by removing the claim that log(N/df) uses smoothing and that it
prevents division by zero. Either describe this as the unsmoothed IDF formula or
replace it with an explicitly smoothed expression, ensuring the discussion
accurately handles terms present in the vocabulary.
techy/03-deep-learning-and-nlp.md-384-384 (1)

384-384: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Remove RoBERTa from the relative-position examples. RoBERTa uses learned absolute position embeddings; XLNet/Transformer-XL are the relative-position examples here. Update the matching sentence below as well.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` at line 384, Update the sequence-length
guidance to remove RoBERTa from the relative positional encoding examples,
leaving XLNet and Transformer-XL as the relative-position models. Apply the same
correction to the matching sentence below while preserving the surrounding
model-selection guidance.

Source: MCP tools

techy/03-deep-learning-and-nlp.md-563-563 (1)

563-563: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Name the BatchNorm momentum convention. This update rule matches TensorFlow/Keras; PyTorch uses the opposite momentum definition. Since both frameworks are mentioned, call out the convention explicitly or add the PyTorch equivalent to avoid ambiguity.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` at line 563, Clarify in the BatchNorm
explanation that the displayed momentum update uses the TensorFlow/Keras
convention, and state the equivalent PyTorch convention or its reversed
parameter relationship. Keep the running-statistics behavior and framework
references otherwise unchanged.

Source: MCP tools

techy/03-deep-learning-and-nlp.md-208-214 (1)

208-214: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Separate the SentencePiece and GPT tokenizer examples. The whitespace marker is SentencePiece-style, not GPT-4/tiktoken. Rename this example to SentencePiece or replace it with output from the specific GPT tokenizer you’re describing.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` around lines 208 - 214, Update the
tokenization example under the “Example” section so its label and token output
consistently represent either SentencePiece or a specifically identified GPT
tokenizer. Do not use the SentencePiece “▁” whitespace markers while describing
GPT-4/BPE output; either rename that example to SentencePiece or replace the
tokens with accurate output from the named GPT tokenizer.

Source: MCP tools

techy/03-deep-learning-and-nlp.md-159-159 (1)

159-159: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Tighten the Transformer examples

  • Line 173: soften GPT-4 to a qualified example, since its public report doesn’t disclose the architecture.
  • Line 355: remove the encoder-decoder cross-attention mention; GPT-style decoder-only blocks use causal self-attention only.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/03-deep-learning-and-nlp.md` at line 159, Update the Transformer
examples so GPT-4 is presented only as a qualified, non-definitive example
because its architecture is not publicly disclosed, and remove the
encoder-decoder cross-attention reference from the GPT-style decoder-only
description while preserving causal self-attention.

Source: MCP tools

🧹 Nitpick comments (1)
techy/concept-reference.md (1)

28-28: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Add blank lines before the Markdown tables.

markdownlint-cli2 reports MD058 at these table starts. Add one blank line between each preceding heading/paragraph and its table so the index passes the configured Markdown lint rule.

Also applies to: 46-46, 52-52, 58-58, 63-63, 75-75, 81-81, 103-103, 109-109, 121-121, 128-128, 135-135, 141-141, 146-146, 155-155, 160-160, 166-166, 181-181, 204-204, 224-224, 235-235, 246-246, 260-260, 271-271, 306-306, 313-313

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@techy/concept-reference.md` at line 28, Insert one blank line immediately
before every Markdown table in concept-reference.md, including the table
beginning with the Concept/Section/File header and all specified table starts,
so each table is separated from the preceding heading or paragraph and satisfies
MD058.

Source: Linters/SAST tools


ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 59f4c7f6-27a9-4b0c-9e5c-dba886cd0823

📥 Commits

Reviewing files that changed from the base of the PR and between 4d9c5c4 and 470231d.

📒 Files selected for processing (6)
  • techy/01-data-science.md
  • techy/02-machine-learning.md
  • techy/03-deep-learning-and-nlp.md
  • techy/05-llm-rag-graph.md
  • techy/concept-reference.md
  • techy/index.md

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant