维恩桥振荡器(Wien Bridge Oscillator)是一种经典的正弦波振荡器,广泛应用于音频频率范围内。其基本原理是通过维恩桥电路(Wien Bridge Circuit)来实现频率选择和反馈控制。

主要特点:

  1. 频率稳定性:由于采用了维恩桥电路,振荡频率非常稳定。
  2. 低失真:输出波形接近理想的正弦波,失真度低。
  3. 频率可调:通过调整电阻或电容,可以改变振荡频率。

工作原理:

  • 维恩桥电路:由两个电阻(R1和R2)和两个电容(C1和C2)组成,形成一个频率选择网络。
  • 反馈机制:通过正反馈和负反馈的平衡,确保振荡器稳定工作。
  • 振荡频率:通常由电阻和电容的值决定,公式为,其中分别是电阻和电容的值。

应用:

  • 音频信号发生器:用于生成稳定的音频频率信号。
  • 测试设备:作为信号源用于各种电子设备的测试和校准。

维恩桥振荡器因其简单、稳定和低失真的特点,在电子工程中得到了广泛应用。主要由于面包板用例2没有生成正弦波,所以搭一个能输出正弦波的振荡器。

电路原理及实现

主要参考Wien Bridge oscillator

Wien Bridge oscillator

面包板上实现一个带buffer的Wien Bridge oscillator,1khz输出正弦波,加上喇叭负载,上下的波形被削平。 面包板实现

陈云,青浦

陈云(1905年6月13日-1995年4月10日),原名廖陈云,江苏青浦(今属上海)人,中国共产党和中华人民共和国的主要领导人之一。他在中国革命和建设中发挥了重要作用,特别是在经济领域。陈云曾担任中共中央政治局常委、国务院副总理等职,对中国的经济发展和改革开放有重要贡献。

青浦小火车

有哪些贡献

陈云在中国革命和建设中有多方面的贡献,主要包括:

  1. 经济建设:在中华人民共和国成立初期,陈云主持了稳定物价、恢复国民经济的工作,成功地实施了一系列经济政策,为新中国的经济基础奠定了坚实的基础。

  2. 改革开放:在改革开放初期,陈云提出了“计划经济为主,市场调节为辅”的经济方针,这一思想对后来的经济体制改革产生了深远影响。

  3. 党内建设:陈云在党内建设方面也有重要贡献,他强调党的纪律和组织原则,提出了“党要管党,从严治党”的思想。

F4 F12 F11
  1. 外交事务:在国际事务中,陈云也发挥了重要作用,他参与了多项重要的外交决策,为中国的国际地位提升做出了贡献。

  2. 理论贡献:陈云在经济理论方面也有独到的见解,他的经济思想对中国的经济发展战略和政策制定产生了重要影响。

陈云的这些贡献使他成为中国现代史上一位重要的政治家和经济领导人。

青浦乘坐小火车

超山位于中国浙江省杭州市余杭区,是著名的旅游胜地。以下是一些关于超山旅游的简要信息:

主要景点

  1. 超山风景区:以奇峰怪石、古树名木、清泉飞瀑著称,是登山和观光的好去处。
  2. 超山寺:历史悠久的佛教寺庙,香火旺盛,建筑古朴。
  3. 超山古道:适合徒步爱好者,沿途风景秀丽,空气清新。

特色活动

  • 登山观景:适合全年,尤其是春秋两季,气候宜人。
  • 寺庙祈福:超山寺是祈福的好地方,常有信徒前来参拜。
  • 农家乐体验:周边有许多农家乐,可以体验当地美食和乡村生活。

交通

  • 自驾:从杭州市区出发,沿杭瑞高速或杭长高速,约1小时车程。
  • 公交:可乘坐公交至余杭区,再转乘当地公交或出租车前往超山。

小贴士

  • 最佳旅游时间:春秋两季气候宜人,适合户外活动。
  • 装备建议:登山时建议穿着舒适的运动鞋,带上足够的水和防晒用品。

哈哈,城北人民的好处,就是去超山也比较近,半个小时到达北园入口。现在自动泊车功能导致我都不会倒车入库了。 上次来是春天,一晃就是秋天了,上次摘了很多青梅,泡了两坛青梅酒,‘都被爸爸喝了,爷爷没喝’,果果说。 翻过三座桥,我们来到盆景园。

盆景园

一直在园子里玩耍,孩子们的童年应该如此,多跑跑,玩一玩,不要每天写作业到很晚,身体健康,开开心心的最重要。

玩🐺抓🐑的游戏

最近看到微软出了两个不错的工作,一个是differential transformer,一个是1 bit量化。回头好好温习了一下qkv和opamp等diff amplifier的视频,勉强理解了,真的是妙啊!

两个diff amplifier的视频,帮助理解信号和噪声。 - bjt diffential amplifier - opamp diffential amplifier

现在大模型的一些结构方法论,引用一个跨学科的语义,可能获得非常惊人的效果。赞一个!

"爸爸,我们下次再来这里玩啊!" "Sure!~"

今天开始学习面包板电子制作130例的第二例,虽然是一个简单的用例,却包含了好多个知识点,如果把这个案例分析明白,对后面的分析会有很大的帮助。那我们一个个模块进行分析把。

例2

电路语义

按下S1,电源通过R1向C1充电,使V1的基极点位逐渐上升,当电位上升到0.7V左右,电路开始起振,扬声器BP开始发声。随着C1两端电压不断升高,音调也随之变化,最终趋于稳定。当松开S1后,C1存储的电荷通过电阻R2向V1的放电,扬声器BP会继续发声,同时音调也会发声变化,此声音将维持几秒钟时间,且音色也逐渐降低。

输入信号分析

先来看输入信号,是由R1和C1组成的RC充放电路。

RC充放电信号

RC电路的充放电过程可以用指数函数描述:

  • 充电过程
  • 放电过程

其中: -是初始电压 -是电阻 -是电容 -是时间

在RC充电电路中,电容充电到一半电压的时间称为半衰期,可以用公式计算。

给定: - -

计算半衰期:

所以,电容充电到一半电压的时间大约是 0.32571 秒,也就是说到1.5v后,振荡电路趋于稳定。电路中有不同频率的噪声,然后在2khz左右的会被选择和放大。

振荡器

学习impedance and phasor对于分析是基础。 电路振荡的条件主要包括以下几点:

  1. 正反馈:电路中必须存在正反馈路径,使得输出信号的一部分被反馈到输入端,并且相位与输入信号一致,从而增强振荡。 9012集电极E端经过C2和R3组成正反馈链路。其实可以认为是一个高通滤波。

r=4.7k, c=10nf, 高通滤波截止频率

高通滤波器的截止频率可以通过以下公式计算:

其中: -(4.7 kΩ) -(10 nF)

将这些值代入公式:

计算:

所以频率应该是会在这个值附近。 2. 增益条件:反馈回路的增益必须足够大,以克服电路中的损耗,确保信号能够持续放大。9013和9012互补电路,进行两级放大,可以确保增益足够,把特定频率的信号放大,直到饱和。

  1. 相位条件:反馈信号的相位必须与输入信号的相位一致,通常要求相位差为0度或360度的整数倍。 两个共发射极npn和pnp,相位差都是

  2. 起振条件:电路需要一个初始扰动(如噪声)来启动振荡过程,一旦振荡开始,正反馈机制将维持振荡。 充电过程电位升高,其中的高频信号就是一个触发。

满足这些条件后,电路将产生稳定的振荡信号。

C3的作用

这个想了很久,D节点也会有很高频的信号,如果没有C3,会直接流向电池,

高频信号流向3v电池,有什么影响

高频信号流向3V电池可能会导致以下影响:

  1. 电池发热:高频信号可能导致电池内部电阻产生额外的热量,增加电池温度。
  2. 电池寿命缩短:频繁的高频信号可能会加速电池的化学反应,缩短电池的使用寿命。
  3. 电压波动:高频信号可能导致电池输出电压出现波动,影响设备的稳定工作。
  4. 电磁干扰:高频信号可能产生电磁干扰,影响周围电路的正常工作。

为避免这些问题,应尽量减少高频信号直接流向电池,或使用适当的滤波和保护电路。

振荡频率的变化原因

基极的电流电压不会对频率造成变化,只会对于振幅,三极管饱和等有影响。

rc充电电路 10k 47mu,多久充一半

在RC充电电路中,电容充电到一半电压的时间称为半衰期,可以用公式计算。

给定: - -

计算半衰期:

所以,电容充电到一半电压1.5V的时间大约是 0.32571 秒。

实现电路

实现电路
观察波形

频率大概为2.4khz左右,并不是很好的正弦波,正的是一个脉冲,负的像方波,应该是由于失真造成的,所以并不是很完美,对于oscillator,需要有更多的研究和实验。

pcb实现电路

画了一个非常简单的pcb,进行了一个装配。

今天开始学习面包板电子制作130例,然后顺便把电路基础知识巩固。

例1

电阻规则表

电阻 颜色
68kΩ 蓝灰黑红
47kΩ 黄紫黑红
20kΩ 红黑黑红
10kΩ 棕黑黑红
4.7kΩ 黄紫黑棕
3.3kΩ 橙橙黑棕
2.2kΩ 红红黑棕
2kΩ 红黑黑棕
1kΩ 棕黑黑棕
470Ω 黄紫黑黑

元件组成

  • 470Ω * 2
  • 470μF * 2

电路语义

初始状态:S1和S2都断开。 闭合S1,R1和C1和C2的并联C=2*470串联,对两个电容进行充电,LED1亮2s左右。 断开S1,闭合S2,两个电容存储的电荷走R2这个回路放电,LED2亮2s左右。

RC一阶微分方程

在RC电路中,电容器和电阻器串联,电压源提供电压。电路的微分方程可以通过基尔霍夫电压定律(KVL)推导得出。

假设电压源的电压为,电容器两端的电压为,电阻两端的电压为,电容器的电荷为,电流为

根据KVL:

电阻两端的电压可以表示为:

电容器两端的电压可以表示为:

电流是电荷的变化率:

代入KVL方程:

这就是RC电路的微分方程。如果电压源是直流电压,则方程变为:

这个方程描述了电容器在RC电路中的充电和放电过程。

求解该方程

首先,将方程改写为标准形式:

这是一个一阶线性微分方程。我们可以使用积分因子法来求解。

  1. 找到积分因子

积分因子为:

  1. 将方程乘以积分因子

这可以改写为:

  1. 对两边积分

左边积分结果为:

右边积分结果为:

其中是积分常数。

  1. 整理方程

两边同时除以

  1. 确定常数

假设初始条件,代入方程:

所以:

  1. 最终解

这就是RC电路中电容器电荷随时间变化的解。

求解

我们已经得到了电容器电荷的解:

电容器两端的电压可以表示为:

代入:

简化后得到:

这就是电容器两端电压随时间变化的解。

积分因子法

电容并联

  1. 基本原理
    • 当多个电容并联时,它们两端的电压相同,但每个电容存储的电荷量可以不同。
    • 电荷量与电容和电压的关系为
  2. 总电荷量
    • 设并联的电容分别为
    • 每个电容存储的电荷量分别为
    • 总电荷量为各个电容电荷量之和:
  3. 电荷量与电容的关系
    • 对于每个电容,电荷量可以表示为,其中是并联电容两端的电压。
    • 因此,总电荷量可以表示为:
  4. 提取公因子
    • 将上式中的提取出来:
  5. 等效电容
    • 设并联后的等效电容为,则总电荷量也可以表示为
    • 因此:
  6. 消去电压
    • 由于不为零,可以消去:

所以,电容并联的公式为:

电容电感串并联

RC时间常数

  • 每个RC电路的充电时间常数为
  • 通常认为电容在后基本充满(电压达到电源电压的99.3%)。

根据上述元件一个R一个C,计算τ=0.2209s 再乘上5(5个时间常数)和2(并联电容乘2),所以在2s左右。

实验

实验对LED1的充电比较连续,对LED2的充电有点断断续续。可能是由于连线不太规则导致,不用一些夹子和较多的开关连线,会比较平滑。

驾驶着我们的001,往德清方向,驾车约45分钟,出发伊娃。

电车确实比油车开起来舒服,像一个大玩具,当然自动泊车很好用,后面再试试自动驾驶。 新市很小,人比较少。到达后先和大鹅拍照。

大白鹅

沈铨

沈铨(1682年-1760年),字南蘋,号南蘋,浙江湖州人,清朝著名画家。他擅长花鸟画,尤其以工笔花鸟著称,作品风格细腻、色彩鲜艳,对后世影响深远。沈铨的作品多描绘自然界的花鸟,注重细节的刻画,力求真实生动。他的画作在当时备受推崇,对日本江户时代的绘画也有一定影响。 我们在沈铨故居看了一看。

钟兆琳

钟兆琳(1901年8月23日-1990年4月4日),中国电机工程专家,被誉为“中国电机之父”。他是中国电机工程学科的奠基人之一,对中国的电力工业和教育事业做出了巨大贡献。

主要成就:

  1. 教育贡献:钟兆琳在多所大学任教,培养了大批电机工程人才。他曾任教于交通大学(现上海交通大学),并在该校创建了电机工程系。
  2. 科研成就:他在电机理论和应用方面有深入研究,特别是在交流电机和同步电机的理论与设计方面有重要贡献。
  3. 学术影响:钟兆琳是中国电机工程学会的创始人之一,并长期担任学会的重要职务,推动了中国电机工程学科的发展。
中国电机

好好学习,为国争光。

走走逛逛,累了就休息一下,看看系统编程。 CS 361,里面讲link的挺不错。

吃点水果

吃一个明虾煲,go home~

prettify-symbol-alist c mode common hook

To prettify symbols in c-mode using prettify-symbols-alist, you can add a hook in your Emacs configuration file (e.g., init.el or .emacs). Here's an example:

1
2
3
4
5
6
7
8
9
(add-hook 'c-mode-hook
(lambda ()
(setq prettify-symbols-alist
'(("->" . ?→)
("==" . ?≡)
("!=" . ?≠)
("<=" . ?≤)
(">=" . ?≥)))
(prettify-symbols-mode 1)))

This hook will enable prettify-symbols-mode in c-mode and replace common C operators with prettier symbols. Adjust the prettify-symbols-alist as needed for your preferences.

add some more symbols

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
(add-hook 'c-mode-common-hook
(lambda ()
(setq prettify-symbols-alist
'(("->" . ?→)
("==" . ?≡)
("!=" . ?≠)
("<=" . ?≤)
(">=" . ?≥)
("&&" . ?∧)
("||" . ?∨)
("int" . ?ℤ)
("float" . ?ℝ)
("char" . ?ℂ)
("return" . ?⏎)
("NULL" . ?∅)
("nullptr" . ?∅)
("std::vector" . ?𝑉)
("std::string" . ?𝑆)
("std::array" . ?𝐴)
("std::unique_ptr" . ?𝑃)
("true . ?𝑡)
("false . ?𝑓)
("std::unordered_map" . ?#)
("void" . ?∅)))
(prettify-symbols-mode 1)))

doom emacs安装

安装 Doom Emacs 的步骤如下:

  1. 安装 Emacs: 确保你已经安装了 Emacs 26.1 或更高版本。你可以通过包管理器安装,例如在 Ubuntu 上:

    1
    sudo apt-get install emacs

  2. 安装 Git: Doom Emacs 依赖 Git 来管理配置。确保你已经安装了 Git:

    1
    sudo apt-get install git

  3. 克隆 Doom Emacs: 打开终端并运行以下命令来克隆 Doom Emacs 仓库:

    1
    git clone --depth 1 https://github.com/doomemacs/doomemacs ~/.emacs.d

  4. 安装 Doom Emacs: 运行 Doom Emacs 的安装脚本:

    1
    ~/.emacs.d/bin/doom install

  5. 配置 Doom Emacs: 安装完成后,你可以通过编辑 ~/.doom.d/init.el~/.doom.d/config.el 文件来配置 Doom Emacs。

  6. 启动 Doom Emacs: 运行 emacs 命令启动 Doom Emacs。

如果你遇到任何问题,可以参考 Doom Emacs 的官方文档或社区支持。

doom sync来同步一些package,更新等。

1
doom sync

gptel配置

要在 Doom Emacs 中配置 gptel(一个用于与 GPT 模型交互的 Emacs 包),你可以按照以下步骤进行:

  1. 安装 gptel: 在 Doom Emacs 中,你可以通过编辑 ~/.doom.d/packages.el 文件来添加 gptel 包。打开该文件并在 package! 部分添加以下内容:

    1
    (package! gptel)

  2. 配置 gptel: 编辑 ~/.doom.d/config.el 文件,添加 gptel 的配置。你可以设置 API 密钥和其他选项:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    (use-package! gptel
    :config
    (setq! gptel-api-key "your key"))
    ;; OPTIONAL configuration
    (setq gptel-model "deepseek-chat"
    gptel-backend
    (gptel-make-openai "DeepSeek" ;Any name you want
    :host "api.deepseek.com"
    :endpoint "/chat/completions"
    :stream t
    :key "your key" ;can be a function that returns the key
    :models '("deepseek-chat" "deepseek-coder")))
    ;; 方便hexo来渲染latex公式
    (defun replace-latex-delimiters (arg1 arg2)
    "Replace LaTeX delimiters \(, \), \[, and \] with $, $$, respectively."
    (interactive)
    (save-excursion
    (goto-char (point-min))
    (while (re-search-forward "\\\\(" nil t)
    (replace-match "$" nil nil))
    (goto-char (point-min))
    (while (re-search-forward "\\\\)" nil t)
    (replace-match "$" nil nil))
    (goto-char (point-min))
    (while (re-search-forward "\\\\\\[" nil t)
    (replace-match "$$" nil nil))
    (goto-char (point-min))
    (while (re-search-forward "\\\\\\]" nil t)
    (replace-match "$$" nil nil))))

    (defun replace-dollar-spaces (arg1 arg2)
    "Replace '$ ' and ' $' with '$' in the current buffer."
    (interactive)
    (save-excursion
    (goto-char (point-min))
    (while (re-search-forward "\\(?:^\\| \\)\\$\\(?: \\|$\\)" nil t)
    (replace-match "$" nil nil))))

    (defun replace-and-trim-latex (arg1 arg2)
    (progn
    (replace-latex-delimiters arg1 arg2)
    (replace-dollar-spaces arg1 arg2)))

    (add-hook 'gptel-post-response-functions 'replace-and-trim-latex)

  3. 同步 Doom Emacs: 运行以下命令来同步 Doom Emacs 配置并安装 gptel 包:

    1
    ~/.emacs.d/bin/doom sync

  4. 使用 gptel: 安装完成后,你可以在 Emacs 中使用 gptel 命令与 GPT 模型交互。例如,运行 M-x gptel 来启动交互会话。

请确保你已经获取了 OpenAI 的 API 密钥,并将其替换到 gptel-api-key 配置中。这样,你就可以在 Doom Emacs 中使用 gptel 与 GPT 模型进行交互了。

上面的内容基本就是来自gptel和deepseek后端。

果果的打字实践

中秋快乐

下面是果果promt的作文。

中秋节快到了,我要和爷爷奶奶去安吉玩。

中秋节去安吉是个好主意!安吉以竹海和茶园闻名,景色宜人。可以考虑去竹博园、龙王山、天荒坪等地游玩。别忘了品尝当地的白茶和竹笋美食。祝你们玩得开心,中秋快乐!

写一篇相关的作文。

中秋安吉行

中秋佳节将至,金风送爽,丹桂飘香。在这个团圆的日子里,我决定和爷爷奶奶一同前往安吉,感受大自然的宁静与美丽。

安吉,素有“中国竹乡”之称,这里的竹海如同一幅翠绿的画卷,随风摇曳,发出沙沙的声响,仿佛在欢迎我们的到来。我们首先来到了竹博园,园内竹影婆娑,种类繁多,令人目不暇接。爷爷奶奶漫步其中,脸上洋溢着幸福的笑容,仿佛回到了年轻时的田园生活。

随后,我们驱车前往龙王山,这里山清水秀,空气清新。沿着蜿蜒的山路,我们登上了山顶,俯瞰整个安吉,远处的茶园如同绿色的海洋,层层叠叠,美不胜收。爷爷奶奶坐在山顶的凉亭里,品着清香的白茶,聊着家常,享受着这份难得的宁静与惬意。

夜幕降临,我们回到了住处,一轮明月高悬天际,洒下银色的光辉。爷爷奶奶在院子里摆上了月饼和水果,我们围坐在一起,赏月、聊天,感受着中秋的温馨与团圆。

这次安吉之行,不仅让我领略了大自然的美丽,更让我感受到了与爷爷奶奶共度的珍贵时光。中秋节,不仅是团圆的节日,更是感恩的时刻。愿我们每个人都能珍惜与家人相聚的时光,共度美好时光。

中秋安吉行,美景与亲情同在,愿这份美好永存心间。

妹妹今年两次由于鼻病毒引发喘,住院两次,后面如何调理,加强哪方面的锻炼

带病创作

妹妹由于鼻病毒引发喘息,住院两次,说明她的免疫系统和呼吸系统较为脆弱。以下是一些调理和锻炼建议:

调理建议:

  1. 增强免疫力
    • 均衡饮食:多摄入富含维生素C、E和锌的食物,如新鲜水果、蔬菜、坚果和全谷物。
    • 充足睡眠:保证每天8-10小时的优质睡眠。
    • 补充益生菌:适当补充益生菌,帮助维持肠道健康,增强免疫力。
  2. 呼吸系统调理
    • 避免过敏原:尽量避免接触尘螨、花粉、宠物毛发等常见过敏原。
    • 保持室内空气清新:定期开窗通风,使用空气净化器。
    • 适当使用加湿器:保持室内湿度在40-60%,有助于缓解呼吸道不适。

锻炼建议:

  1. 适度运动
    • 有氧运动:如散步、慢跑、游泳等,增强心肺功能。
    • 呼吸训练:学习深呼吸和腹式呼吸,增强肺活量。
  2. 避免剧烈运动
    • 避免剧烈运动和长时间高强度运动,以免加重呼吸负担。
  3. 循序渐进
    • 从轻度运动开始,逐渐增加运动量和强度,避免突然增加运动量导致不适。

其他建议:

  1. 定期体检:定期进行体检,监测呼吸系统和免疫系统的健康状况。
  2. 遵医嘱:如有需要,遵医嘱使用药物或进行其他治疗。

通过以上调理和锻炼,可以帮助妹妹增强免疫力和呼吸系统的健康,减少喘息发作的频率和严重程度。

C919

尽管如此,还是祝大家中秋快乐!我们的国产大飞机,后面会经常乘坐。

C919
C919餐食

夏天即将结束,带着小朋友最后玩一次水了。这是第二次去筏头派出所,距离58公里,驾车约45分钟。

老样子,吃好🥣,买一杯☕️。一路高速就到了。

不太妙的发现大桥下的水都干了,但是没有关系,找到了一个小水坑,那边还有潺潺流水。把两把椅子放好,开始看

MIT 18.02,一边看,一边品味着流水,flux,curl,div,优美。

小鱼爸爸爱学习

小朋友们的快乐很简单,只要有水玩就好啦。

可可玩水
果果特写
姐妹俩

玩好之后,🚗出来的一个路口,有两家饭店都还可以,吃点鱼头,本鸡,都是挺不错的。好啦,夏天,拜拜~

问了gpt几个适合孩子打字的网站,选择了typing club,看起来娱乐性不错,打算让果果试一试。主要培养孩子如下几点:

  1. 认识比本的字母,英文的基础
  2. 通过打字接触到计算机的一个外设,对计算机能有初步认识
  3. 打字是编辑的基础,编辑是coding的基础
  4. 打字也是使用工具的基础
  5. 等能够打字了,可以学习数学相关的工具,比如maple learn和mathematica,gpt告诉我maple learn更适合孩子,等后面可以试一试

前几天网站的图片遭到了不法分子的攻击,怪我没有安全防范意识,bucket还是用公有读,配置COS Referer白名单即可。

果果的打字练习第一课

Motivation

The LLM model is to big to put into the device, if there any batter architecture to make the model small enough to put to the device and keep the precision and inference performance.

The LLM model embedding the word to very high dimension, in order to do better classification. But it will affected by the curse of dimensionality. So we need deep neural net work(more parameters) and more training data to avoid overfitting.

Also use attention mechanism to make them classifiable.

But each time put some words into the space, may be adding one new dimension only useful for related words, and for most other words will add one no useful dimension. And the whole vector space is sparse and need more training data and complex model(more parameters).

We can use the idea of mixture of experts, they form one graph, and some experts are independent, but some has relations between each other, can be connected by edges. So the problem becomes make each experts' dimension as small as possible, and the duplication features in different experts as small as possible. We convert one high dimension sparse LLM to many row dimension dense experts. Just like the symbol table design in compiler, we can use one big flatten symbol table, but the scope level and scope name in each scope are same and can be eliminated, so traditional implementation of the symbol table use the chain of scopes hash table, make a more compact memory.

Design

A graph to represent the model, is all experts, and is the edge of the two experts.

Partitioning

Take the compute system as the whole world. We can split experts to

  • operating system
  • database
  • compiler
  • programming language
  • distributed
  • network
  • micro architecture
  • application
  • electronic
  • common knowledge

Once a word file system coming, will be both added to operating system and databse, and if a word computer arrived, it will be put to the common knowledge. And all experts depend on the common knowledge.

Evolve

All the experts can be version controlled, and can evolve, refactoring. Like add more words, add dimension, remove words to other experts, extract more experts. Just like the package manage system, all experts are packages.

Query(inference)

The query convert to tokens, and send to the related experts, exploit method use dependent experts to combine the results, exploare method to query other experts to find results too. The results contian all the experts, the sub graph forms a path. The path can be cached.

Online learning

Support real time input sentences. The tokenizer first to classification, and put to different experts, batch will trigger insert. Insert data to the experts, and update the path.

0%