学习分享Y站上的视频:Self-Attention Explained: How Transformers Actually Work (Full Visual Breakdown)

大体内容是关于Transformers里的Self-Attention的解释,以下配合我设计的一个Prompt些的一个全英的学习笔记。

屏幕截图 2026-05-08 005643.png

操作步骤大概就是:我录下了这个视频的音频内容去调用一个语音识别model识别成详细字幕,再用拿到的字幕内容创建提示词问Deepseek该怎样做英文笔记。当然这个不是重点,本篇的重点是展示AI总结的关于Transformers原理的学习笔记。以下是AI的第一次思考过程,开始思考怎样总结喂给她的Context思路还是很清晰的。

屏幕截图 2026-05-08 010150.png

以下是第一次思考得到笔记的具体内容:

Here is a detailed study note based on the transcript, designed to help you grasp the core ideas of Transformers and self-attention in a simple, visual way.


🧠 English Study Notes: Self-Attention & Transformers (From Scratch)

1. The Core Question: What Does "It" Refer To?

Let's start with a simple sentence:

The animal didn’t cross the street because it was too tired.

We instantly know that "it" means "animal", not "street".
How did we know? We mentally connected "it" to "animal" by looking at the other words.
This simple act – one word reaching out to understand another – is the central idea behind self-attention.


2. The Old Problem: RNNs and Lost Memory

Before Transformers, models (RNNs) read text strictly left to right, word by word.

  • By the time they reached "it", the word "animal" was buried in the past.
  • The context was lost – this is called the long-term dependency problem.

The fix? Throw away the sequential method.
What if every word could look at every other word at the same time, directly?


3. The Big Idea: Self-Attention as a Connected Web

Forget left-to-right order. Imagine a web where "it" can directly reach "animal" instantly.

  • Every word queries every other word simultaneously.
  • Nothing is ignored. Every word contributes to the meaning.
    This is the philosophy of Attention Is All You Need (2017).

🔢 The Math, Step by Step (Simplified)

Step 0: Words Become Numbers (Embeddings)

Before attention, words must become numbers the computer understands.
Each word gets a dense vector – a list of numbers that serves as its "personality fingerprint".

  • Example words: the, cat, sat.
  • Each becomes a vector of d numbers: x₁, x₂, x₃.
  • Stack them to get the input matrix X.
    (Shape: 3 tokens × 4 dimensions – 3 rows, 4 columns.)

Step 1: Create Q, K, V (Three Versions of Each Word)

We project X into three separate matrices by multiplying with learned weight matrices:

  • Query (Q) – "What am I looking for?" (the word asking a question)
  • Key (K) – "What do I have to offer?" (the word being evaluated)
  • Value (V) – "Here’s my actual information."

Each word now has three vectors: a query, a key, and a value.

Step 2: Compute Attention Scores (How Well Do Words Match?)

We find out how much each word should focus on every other word.
Multiply Q by the transposed K (Q × K^T).

  • This creates a grid of raw scores – each cell shows the relationship between two words.
  • High positive score = strong connection. Low/negative = unrelated.
  • The diagonal (word to itself) always gets high scores – a word naturally attends to itself to keep its own meaning.

Example: "cat" (subject) gets a high score with "sat" (verb) – the model links them automatically.

Step 3: Scale the Scores (Prevent Exploding Numbers)

Problem: If the key vectors are large (e.g., dimension d_k = 64), the raw scores can become huge.
Passing huge numbers through softmax makes one value ~1 and the rest ~0 → learning stops.

Solution: Divide all scores by √d_k (square root of key dimension).

  • For 64 dimensions, divide by 8.
  • This keeps the scores in a healthy, zero-centered range.
    This trick is why it’s called scaled dot-product attention.

Step 4: Apply Softmax → Attention Weights

After scaling, we apply the softmax function row-wise.

  • Exponentiates values and makes each row sum exactly to 1.
  • Now each row is a probability distribution: it tells exactly how much focus a word places on every other word.

Result: Attention Weight Matrix – each row sums to 1; higher value = more focus.

Step 5: Weighted Sum of Values → New Context-Rich Words

Finally, multiply the attention weights by the Value (V) matrix.
For each word:

  • Take a weighted mixture of all value vectors based on the attention weights.
  • Example: Output for "the" = 61% of "the" value + 25% of "cat" value + 14% of "sat" value.

Now every word vector is enriched with context from the entire sentence.
The word "cat" now carries a piece of "sat", and "sat" carries a piece of "cat".


🧩 The Full Pipeline (Quick Recap)

StepWhat Happens
1Convert words to embeddings → Input Matrix X.
2Multiply X by weight matrices → Q, K, V.
3Compute raw scores: Q × Kᵀ.
4Scale by √d_k → stable scores.
5Softmax → attention weights (rows sum to 1).
6Multiply attention weights by V → final contextualized output.

✨ Why This Is So Powerful

  • Parallel processing: All words interact simultaneously, not sequentially.
  • Long-range dependencies: "it" and "animal" connect directly, no matter how far apart.
  • Grammatical relationships emerge naturally: The model learns subject-verb linkages purely from data, no rules programmed.
  • Self-awareness diagonal: Each word keeps its own core meaning while absorbing context.

🔮 Teaser: Multi-Head Attention

A single attention head can only capture one type of relationship at a time.

  • "Bank" + "deposit" → financial institution
  • "Bank" + "river" → land beside water

But words often have multiple meanings simultaneously.
Multi-head attention runs several attention mechanisms in parallel, each focusing on different aspects (e.g., grammar, meaning, position). That’s where we go next.


📝 Key Terms Glossary

  • Embedding – A dense vector representing a word.
  • Query (Q) – What the word is looking for.
  • Key (K) – What the word offers to be matched.
  • Value (V) – The actual content of the word.
  • Attention Score – Raw measure of similarity between query and key.
  • √d_k – Scaling factor to prevent saturation.
  • Softmax – Turns scores into probabilities summing to 1.
  • Scaled Dot-Product Attention – The full formula: softmax(QKᵀ/√d_k) × V.

Let me know if you'd like a visual sketch, a simpler analogy, or a Python-like pseudo-code walkthrough.

这里我们可以继续顺着AI最后的提升创建一个有代码有视觉草图提示的笔记版本,下面直接上结果:

AI思考过程如下:

屏幕截图 2026-05-08 010903.png

然后是结果:

Let's dive deeper with three complementary tools: a simpler analogy you can feel, a visual sketch you can picture, and a Python-style pseudo-code you can trace step by step. We'll reuse the sentence "the cat sat" throughout.


🧩 1. The Classroom Analogy (Q, K, V Intuition)

Imagine a classroom of three students: The, Cat, and Sat.
They are trying to form a sentence meaning together. Each student holds a card:

  • Query (Q): "What am I looking for right now?" (Their current need)
  • Key (K): "What I have to offer that others might look for." (Their label)
  • Value (V): "My actual knowledge/information." (Their content)

Now the process:

  • Cat wants to know what action is happening. Its Query is "I'm looking for a verb."
  • Sat holds a Key that says: "I am a verb, action of sitting."
  • The dot product between Cat's Query and Sat's Key returns a high score → they match well.
  • The is not a verb, so its Key gives a low score with Cat's Query.

After comparing, each student blends in information from everyone else based on these scores. So Cat's final understanding includes a big chunk of Sat's value (the verb) and a smaller chunk of The (article context). Now Cat knows it's a cat sitting.

The division by √d_k is like turning down the volume when too many students are shouting; softmax then tells each student to pay attention to others proportionally (all attention weights sum to 1).


🎨 2. Visual Sketch (Mental Diagram)

Let's draw the attention flow for the sentence "the cat sat" with dimension d=4. I'll describe each panel; you can imagine them or sketch them on paper.

Panel A: Embedding Matrix X (3×4)

Rows = tokens, columns = features.

text
复制代码
dim0 dim1 dim2 dim3 the [ 0.2, 0.5, -0.1, 0.8 ] cat [ 0.9, -0.3, 0.4, 0.1 ] sat [-0.4, 0.7, 0.6, -0.2 ]

Each row is the x vector for a token.

Panel B: Project into Q, K, V (Weight matrices W_Q, W_K, W_V)

Think of this as three different "lenses" that look at X.

  • X @ W_Q → Q (3×4)
  • X @ W_K → K (3×4)
  • X @ W_V → V (3×4)

For simplicity, we'll show just the first token ("the") in Q and K:

text
复制代码
Q (row for "the"): [0.1, 0.3, -0.2, 0.5] K (row for "cat"): [0.8, 0.1, 0.0, -0.4] ...

Panel C: Raw Attention Scores = Q @ K^T

We compute a 3×3 grid (tokens × tokens). Each cell = dot product of a query row and a key row.

text
复制代码
the (key) cat (key) sat (key) the (q) 2.1 0.8 -0.3 cat (q) 0.6 3.4 1.9 sat (q) -0.2 1.6 3.8
  • Diagonal: high self-scores.
  • "cat" query gives high score to "sat" key (1.9), showing the verb link.

Panel D: Scale by √d_k (here d_k=4 → √4=2)

Divide every cell by 2:

text
复制代码
the cat sat the 1.05 0.40 -0.15 cat 0.30 1.70 0.95 sat -0.10 0.80 1.90

Now values are tamed (no explosion).

Panel E: Apply Softmax Row-wise

For row "cat": scores [0.30, 1.70, 0.95] → softmax → probabilities that sum to 1, e.g., [0.15, 0.70, 0.15].
This means "cat" pays 70% attention to itself, 15% to "the", 15% to "sat".
Matrix becomes attention weights:

text
复制代码
the cat sat the [0.60, 0.30, 0.10] (sum=1) cat [0.15, 0.70, 0.15] sat [0.05, 0.25, 0.70]

Panel F: Weighted Sum of Values = Output

Each output row = weighted sum of V rows. For "cat":

text
复制代码
Output_cat = 0.15 * V_the + 0.70 * V_cat + 0.15 * V_sat

Now "cat" contains a blend of its own meaning and context from "sat" and "the".

Big picture visual summary: Imagine three rows (tokens) evolving:

text
复制代码
[X] → [Q,K,V] → [Scores grid] → [Scaled] → [Softmax Weights] → [Weighted V] → [New context-rich vectors]

All operations are parallel, and every word talks to every other word at the same time.


💻 3. Python-like Pseudo-Code Walkthrough

Let’s write a step-by-step function self_attention that takes token embeddings and returns context-aware vectors.

python
复制代码
import numpy as np def self_attention(X, d_k, W_Q, W_K, W_V): """ X: input matrix (seq_len × d_model), e.g., 3×4 d_k: dimension of keys (usually d_model / num_heads) W_Q, W_K, W_V: learned weight matrices (d_model × d_k or d_model × d_v) Returns: output matrix (seq_len × d_v) """ # Step 1: Compute Q, K, V Q = X @ W_Q # (3×4) @ (4×d_k) -> (3×d_k) K = X @ W_K # (3×4) @ (4×d_k) -> (3×d_k) V = X @ W_V # (3×4) @ (4×d_v) -> (3×d_v) # Step 2: Raw scores = Q @ K^T scores = Q @ K.T # (3×d_k) @ (d_k×3) -> (3×3) # Step 3: Scale by √d_k scaled_scores = scores / np.sqrt(d_k) # Step 4: Softmax along rows (axis=1) # For numerical stability, subtract row max before exp exp_scores = np.exp(scaled_scores - np.max(scaled_scores, axis=1, keepdims=True)) attention_weights = exp_scores / np.sum(exp_scores, axis=1, keepdims=True) # Now each row sums to 1 # Step 5: Weighted sum of Values output = attention_weights @ V # (3×3) @ (3×d_v) -> (3×d_v) return output, attention_weights

Trace with dummy numbers (for intuition):

Assume embeddings X for "the", "cat", "sat" as given above, and tiny random weight matrices with d_k=2, d_v=2. We'll just illustrate the logic.

python
复制代码
# Toy data X = np.array([[0.2, 0.5, -0.1, 0.8], # the [0.9, -0.3, 0.4, 0.1], # cat [-0.4, 0.7, 0.6, -0.2]]) # sat d_model = 4 d_k = 2 d_v = 2 # Random weights (normally learned) W_Q = np.random.randn(d_model, d_k) W_K = np.random.randn(d_model, d_k) W_V = np.random.randn(d_model, d_v) output, attn_weights = self_attention(X, d_k, W_Q, W_K, W_V) print("Attention weights (rows sum to 1):") print(attn_weights) # Example: cat row might be [0.1, 0.7, 0.2] -> focuses on itself and on sat print("Output shape:", output.shape) # (3, 2) - each token's new context vector

What this does: The function transforms a sequence of independent word vectors into a sequence where each vector is a blend of the whole sentence, weighted by relevance.


🔍 Key Insight from All Three Lenses

  • Analogy: Words are students querying each other's notes and blending knowledge.
  • Visual sketch: A grid of connections that gets scaled and normalized into a probability map.
  • Code: A few matrix multiplications and a softmax with a division by √d_k.

This is the core engine of a Transformer block. Stack multiple such blocks, add multi-head (several parallel attention operations with different W_Q,K,V), and you get the full understanding capacity of a model like GPT or BERT.

Would you like the next step explained—how multiple heads combine to capture different meanings of "bank" in the same layer?

这里AI又推理出了下一步我们该做什么,那就直接扩展下,有没有一种记笔记变写专业论文的感觉

Absolutely! Let's build on the same classroom analogy, visual sketch, and pseudo-code to unlock multi-head attention and how it lets the word "bank" be understood in two completely different worlds at the same time.


🧩 1. The Classroom Analogy with Multiple Specialist Teams

Our classroom now needs to interpret a sentence with an ambiguous word:

"The bank deposit was safe near the river bank."

A single student (one attention head) asked: "What am I looking for?" But they can only wear one pair of glasses (one Query projection). If they look for "financial words" they'll see deposit and ignore river. If they look for "geographic words" they'll see river and ignore deposit.

Now imagine you have h different specialist teams (heads), each wearing a different pair of glasses:

  • Head 1 (Financial lens): Its Query matrix W_Q1 is trained to ask "What financial terms are around me?" So for the first "bank", it looks at deposit and gets a high score. Its Keys and Values also project words into a "financial" subspace.
  • Head 2 (Geography lens): Its Query matrix W_Q2 is trained to ask "What landscape words are around me?" For the second "bank", it looks at river and gets a high score.
  • Head 3 (Syntax lens): It might focus on grammar roles like articles ("the") or prepositions ("near").
  • Head 4 (Positional / other): Could focus on word order or other patterns.

Each head independently does scaled dot-product attention using its own set of weight matrices (W_Q, W_K, W_V). So at the same layer, the word "bank" simultaneously:

  • Receives a financial-context vector from Head 1.
  • Receives a geography-context vector from Head 2.
  • Receives grammar/syntax flavor from Head 3, etc.

Then all these vectors are concatenated and passed through a final linear projection (W_O). Now the single output vector for "bank" contains all these different meanings mixed together—the model hasn't chosen one meaning yet, it carries both (and more) in a richer representation. Later layers can use this combined knowledge.

So in the classroom, instead of one student deciding the meaning, you have multiple specialist students going around, each asking a different question, and then they pool their findings. The word "bank" ends up knowing that it is both near a deposit (financial) and near a river (geographic) simultaneously.


🎨 2. Visual Sketch of Multi-Head on "bank"

Imagine a single sentence input: ["The", "bank", "deposit", "near", "the", "river", "bank"]. At a specific layer, we want to see how the second-to-last word "bank" (the riverbank) is processed.

Panel A: Input Embeddings (as before)

Each token gets a vector of size d_model = 512, e.g. x_bank.

Panel B: Split into Multiple Heads

If we have h = 4 heads, each head will work with a smaller dimension d_k = d_v = d_model / h = 128.
We linearly project the input vector for "bank" (and all others) into 4 different Q, K, V sets — one set per head.
Think of this as creating 4 different "colored copies" of each word.

text
复制代码
Head 1 (Financial): Q1, K1, V1 Head 2 (Geography): Q2, K2, V2 Head 3 (Syntax): Q3, K3, V3 Head 4 (Positional): Q4, K4, V4

Panel C: Each Head Computes its Own Attention Grid

Take Head 1 (Financial). Its attention scores for the riverbank "bank" might look like:

text
复制代码
The bank deposit near the river bank bank: [0.05, 0.10, 0.02, 0.01, 0.01, 0.01, 0.80] (strong self-attention, low to others because no financial terms)

But wait, if the target "bank" is the riverbank, there's no financial "deposit" nearby. Head 1 will still produce a neutral or self-focused output because its financial lens doesn't see any financial words. Meanwhile, Head 2 (Geography) for the same riverbank "bank" will produce:

text
复制代码
The bank deposit near the river bank bank: [0.05, 0.05, 0.01, 0.15, 0.14, 0.50, 0.10] (high attention to "river")

Head 3 might focus on the preposition "near".
Head 4 might attend to word positions.

Panel D: Each Head Outputs a Context Vector

Head 1's output for riverbank "bank": a weighted mix of values that's mostly the bank itself (little financial info).
Head 2's output: a mix heavily influenced by "river".
Head 3's output: influenced by "near".
Head 4's output: whatever else.

Panel E: Concatenate and Project

The four output vectors (each d_v=128) are concatenated into one vector of size 128 * 4 = 512 (back to d_model).
Then multiplied by a learned matrix W_O to blend them.

Result: the final vector for "bank" now encodes:

  • It's near a river (geography head),
  • It's connected grammatically to near (syntax head),
  • Some residual self-content,
  • No financial meaning pulled from "deposit" because that head didn't see it.

For the first "bank" (near "deposit"), the pattern would be reversed: the financial head would fire strongly on "deposit", the geography head would see nothing.

Thus, the model can disambiguate based on which heads active, even within the same layer. And in early layers, the representation still carries both possibilities; deeper layers can resolve them.


💻 3. Python-like Pseudo-Code: Multi-Head Attention

Let's extend our self_attention function to multi_head_attention. It will split the input into multiple heads, apply attention in parallel, then combine.

python
复制代码
import numpy as np def multi_head_attention(X, d_model, num_heads, W_Q_list, W_K_list, W_V_list, W_O): """ X: input matrix (seq_len × d_model) d_model: total model dimension (must be divisible by num_heads) num_heads: number of attention heads (h) W_Q_list, W_K_list, W_V_list: lists of weight matrices for each head each W_Q[i] shape (d_model × d_k), etc. W_O: output projection matrix ((num_heads*d_v) × d_model) Returns: output matrix (seq_len × d_model) """ seq_len, _ = X.shape d_k = d_model // num_heads d_v = d_model // num_heads # often d_v = d_k head_outputs = [] for i in range(num_heads): # Get head-specific weight matrices W_Q = W_Q_list[i] # (d_model × d_k) W_K = W_K_list[i] # (d_model × d_k) W_V = W_V_list[i] # (d_model × d_v) # Compute Q, K, V Q = X @ W_Q # (seq_len × d_k) K = X @ W_K # (seq_len × d_k) V = X @ W_V # (seq_len × d_v) # Scaled dot-product attention scores = Q @ K.T / np.sqrt(d_k) # Softmax (stable) exp_scores = np.exp(scores - np.max(scores, axis=1, keepdims=True)) attn_weights = exp_scores / np.sum(exp_scores, axis=1, keepdims=True) head_output = attn_weights @ V # (seq_len × d_v) head_outputs.append(head_output) # Concatenate all head outputs along the last dimension multi_head_output = np.concatenate(head_outputs, axis=-1) # (seq_len × (num_heads*d_v)) # Final linear projection output = multi_head_output @ W_O # (seq_len × d_model) return output # Example usage with dummy data for the "bank" sentence seq = ["The", "bank", "deposit", "near", "the", "river", "bank"] d_model = 512 num_heads = 4 X = np.random.randn(len(seq), d_model) # pretend embeddings # Initialize weight lists (normally learned) W_Q_list = [np.random.randn(d_model, d_model//num_heads) for _ in range(num_heads)] W_K_list = [np.random.randn(d_model, d_model//num_heads) for _ in range(num_heads)] W_V_list = [np.random.randn(d_model, d_model//num_heads) for _ in range(num_heads)] W_O = np.random.randn(num_heads * (d_model//num_heads), d_model) final_output = multi_head_attention(X, d_model, num_heads, W_Q_list, W_K_list, W_V_list, W_O) print(final_output.shape) # (7, 512) - each token enriched with multiple contexts

How does this capture multiple meanings of "bank"?
Because each head has its own W_Q, W_K, W_V matrices, they learn different relationships. During training, one head will specialize to assign high attention between "bank" and "deposit", another between "bank" and "river". The final concatenation and projection combines these signals into a single vector that says: "This word could be financial or geographical depending on what other heads tell me." Later layers can use this rich vector to select the correct meaning.


🔍 Summary: Single-Head vs Multi-Head

AspectSingle-Head AttentionMulti-Head Attention
Q,K,VOne set of projectionsMultiple sets (one per head)
FocusCan only capture one type of relationship per layerCaptures multiple relationship types simultaneously
Example "bank"Might only link to "deposit" OR "river", not bothHead 1 links to "deposit", Head 2 links to "river"
OutputOne context vectorConcatenated and projected vector containing blended insights

Multi-head attention effectively lets the model look at the sentence through multiple pairs of glasses at once, then merges the views. That’s how Transformers disambiguate words like "bank" so powerfully—no rule-based logic, just learned parallel attention patterns.

0个评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
耄耋之王农场悟道中
作者分享
不知不觉加入编程导航一年了,从原始人到造航母。一年前来的时候是想重拾编程信心,吭哧瘪肚的学项目。现在这时候已经进入AI行业天天Vibe Coding,Crazy我只能说!
3
Day 90 三个多月AI学习终于迎来新篇章,我管这叫大AI时代和大航海一个意思 ✅ 今天做了: 1. 继续深挖底层原理 --- 回归《AI》作为基石常看常新 2. 挖一些外网的AI热点和资料 --- 拓展思维 3. 继续Vibe Coding尝试 --- Loop自动编码器持续优化,和“一键素材成文”开放MCP(未来给公司营销用的,只需投素材再回答几个问题,然后AI炼化多agent配合多端发文) 「小步跑,小突破,慢慢集气汇聚成必杀」 ⏰ 下周计划: 1. 上班继续清技术债 2. 用AI突破5个定向场景和虚拟场景定制AI自动工作流 3. 修之前AI项目的漏洞 4. 继续丰富MCP,SKILL,CLI市场 5. 优化现有的需求场景进一步从能用到好用跨越 「工作和之前的玩具结合起来,双向奔赴双向赋能」 📚 今日感悟: 纪念一下三个月的AI学习,可能是人生中最有意义的三个多月之一。有种工具火耕刀时代跃进到信息时代的感觉,我个人开始大范围用AI也是今年的事,然后就干AI了。话到这里反倒没有太多感慨,只能说AI时代太神奇了,一学一个不吱声就完事了。
2
Day 89 ✅ 今天做了: 1. 继续琢磨更多MCP工具,公司里搭了个超级智能体飞书打通了,剩下的就是优化完善 2. 继续看AI底层原理,这个对智能体的优化太重要了,模式思维LangGraph都能给业务赋能的 3. 研究一些AI服务的优化,尤其是挂Hermes的云主机怎么节省token 4. 补一些之前鱼皮的项目,主要是架构设计更好的指挥AI ⏰ 明天计划: 1. 优化自动LOOP编码器,实测发现了几个空烧token的场景 2. 研究下之前玩具Vibe Coding项目的一些底层亮点 3. 看AI基础知识 📚 今日感悟: 入职快一个月了也搞了很多东西,也搞了一些业务那边的AI自动化需求,总体很满意的。总算能用的上了,下面就是往好用稳定性高上突破。现在公司运维大佬和我一个组,安排的太好了,资源调配吱一声就有了。剩下的就是合理运用现有公司资源,搞一些Agentic AI的尝试,底层我再好好摸摸大模型原理。
4
Day 88 ✅ 今天做了: 1. 旧项目完成 MCP 协议封装,工具调用接口已通,Agent 可调本地能力了 2. KIMI3 上手实测,长上下文压缩确实有东西,推理速度比预期快,99元裆走起 3. Token Plan 实机压测跑完,长文本场景下不同策略的消耗和精度损失有了量化对比,数据到手。 ⏰ 明天计划: 1. 把今天 Token Plan 的测试结果整理成可复用的小工具,纳入 LOOP 编排器。 2. 啃一下 MoE(混合专家)路由逻辑,搞懂 KIMI3 这类模型怎么做条件计算。 3. 用 MCP 搭一个最简单的 Agent 链,把扫码采集 → 本地编排 → 模型推理串起来跑一遍。 📚 今日感悟: 实测才是照妖镜,纸上参数和实机表现经常两码事。MCP 包完那刻才真切感受到——能力必须可被调用,才有资格谈“被 Agent 使用”
3
Day 87 继续打卡,换一套学习打法,保留基线 ✅ 今天阈值: 1. 继续搞vibe coding小项目 - 这次是喜欢的扫码系列,通过扫码获取数据源收集是个好文明也省得鉴权 2. 本地也编排一个简单的LOOP代码编排器 --- 基本完成继续优化 3. 继续学习AI Agent的一些原理 --- 这次复习《AI》里的transformer ⏰ 明天计划: 1. 继续完善一些之前的而项目,并开放MCP 2. 研究一下KIMI3,这小玩意还挺强据说OpenRounter Benchmark仅次于BIG3 3. 继续对一些token plan做调研,有空就试试实机效果 📚 今日感悟: 现在发现学习基线还是得留,有时间了就把各种AI底层架构得给看看尤其是Agent的。防一手企业被刺,也防一手被AI淘汰。
3
下载 APP