最近在看編譯器的書籍,想從0開始寫一個簡單的自制編程語言練練手,但是同時想到自己現在手頭有ChatGPT,于是萌生想法:如果我了解編譯器整個設計過程,為什么我還需要重頭開始寫編譯器呢?為何不直接將整個實現思路給到GPT,讓GPT幫我實現代碼,我只需要考慮如何設計詞法和語法,如何優化等過程即可,說干就干,于是開始《ChatGPTAI自制編程語言》系列文章。1、試驗在驗證《AI自制編程語言》之前,我在想整個流程是否按照想法...
隨著當前各種編程??Agent???,??MCP???的層出不窮,大模型的正在加速進化,于是又開始探索,不過這次的目標是用??golang???實現??JavaScript??引擎(目標是完成ES5.1的全部功能)。1.回顧JS編譯器的實現過程如上是總結的??V8??大體的實現方式,編程語言的實現已經經歷了幾十年的發展,包括V8,Lua等語言基本都采用類似實現步驟:詞法分析語法分析語義解析和優化虛擬機通過JIT實現性能優化...2.如何選擇...
2025-06-09 00:42:47 505瀏覽 0點贊 0回復 0收藏
在早期的圖像分類中,通常流程是先人工提取特征,然后用對應的機器學習算法對特征進行分類,分類的準確率一般依賴特征選取的方法,甚至依賴經驗主義。YannLeCun最早提出將卷積神經網絡應用到圖像識別領域的,其主要邏輯是使用卷積神經網絡提取圖像特征,并對圖像所屬類別進行預測,通過訓練數據不斷調整網絡參數,最終形成一套能自動提取圖像特征并對這些特征進行分類的網絡,如圖:圖像處理1、卷積神經網絡卷積神經網絡(Convo...
2025-05-27 06:53:49 641瀏覽 0點贊 0回復 0收藏
為了探索和改進AI工具在編程方面的體驗,同時也想驗證一些AI的邊界,于是又想到了嘗試從0實現高性能JSON解析器,說干就干。開始以為比較簡單,不會超過半天就能實現,但是經過各種提示詞優化,最終花了兩天時間...1.選用工具現在有各種AICopilot,比較常用的Cursor,Windsurf,Trae等,不過我現在用的比較順手的是:Windsurf。除了編程工具,然后就是模型,目前代碼領域比較強的:Claude3.7Sonnet和Claude3.7SonnetThinkingGPT4...
2025-05-13 00:45:57 693瀏覽 0點贊 0回復 0收藏
最近MCP這么火,了解了一段時間也該寫篇總結,那就開始吧。1.什么是MCPMCP(ModelContextProtocol,模型上下文協議),2024年11月底,由Anthropic推出的一種開放標準,旨在統一大型語言模型(LLM)與外部數據源和工具之間的通信協議。官網的介紹:https:modelcontextprotocol.iointroductionMCP包括幾個核心功能:Resources是允許服務器公開可由客戶端讀取并用作LLM交互上下文的數據和內容,包括文件內容,數據庫,API,圖片等...
2025-04-16 06:17:45 2116瀏覽 0點贊 0回復 0收藏
1.LanceDB介紹LanceDB是一個開源的用Rust實現的向量數據庫(https:github.comlancedblancedb),它的主要特點是:提供單機服務,可以直接嵌入到應用程序中支持多種向量索引算法,包括Flat、HNSW、IVF等。支持全文檢索,包括BM25、TFIDF等。支持多種向量相似度算法,包括Cosine、L2等。與Arrow生態系統緊密集成,允許通過SIMD和GPU加速在共享內存中實現真正的零拷貝訪問。2.LanceDB安裝pipinstalllancedb預覽版本:pipinstallpre...
2025-04-03 00:15:42 2066瀏覽 0點贊 0回復 0收藏
我們在寫Prompt可能經常遇到不準確或者無法獲得外部知識,因此本文講述CoT和ReAct如何運作并提高大語言模型準確性。第一部分:CoT(思維鏈)1、什么是CoT通用的Prompt:問題:Roger有5個網球。他買了2罐網球。每罐有3個網球。他現在有多少個網球?答案:答案是11個。問題:自助餐廳有23個蘋果。如果他們用了20個來做午餐,又買了6個,他們現在有多少個蘋果?輸出答案:答案是29個。CoT的Prompt:問題:Roger有5個網球。他買了2...
2025-03-24 00:22:42 1535瀏覽 0點贊 0回復 0收藏
前面一篇文章介紹了??《從0開發大模型之DeepSeek的GRPO》??,并且實現了一個簡單版本的GRPO?代碼,不過從工程領域來看,并沒有復現DeepSeekR1,于是最近申請了48G的顯存,結合一些開源的方案復現ahamonent,并給出完整的代碼和工具鏈。1、什么是ahamonentDeepSeekR1論文中提到,模型讓作者「見證了強化學習的力量和美感」,在DeepSeekR1Zero的中間版本,「頓悟時刻」來了:模型學會了以人類的語氣進行反思。ahamonent2、使...
2025-03-11 07:29:34 2156瀏覽 0點贊 0回復 0收藏
最近在看一篇github上大佬的文章,從0開始訓練llama3,覺得對于《從0開發大模型》有點幫助,于是翻譯一下,發現其中很多內容當前系列文章的知識點相似。原文:https:github.comnaklechallama3fromscratch其中metallamaMetaLlama38B文件地址:https:huggingface.cometallamaMetaLlama38Btreemainoriginal1、Tokenizer原始代碼沒有實現tokenizer,而是使用llama3的tokenizer.model,實現代碼如下:執行:pipinstallblobfile執行:...
2025-02-19 12:48:53 2125瀏覽 0點贊 0回復 0收藏
最近,DeepSeekR1的發布為國產大模型爭光了(太強了),不過GRPO算法源自DeepSeekMath7B模型,該模型在MATH基準測試中取得了優異成績,論文發表于2024年2月份:https:huggingface.copapers2402.03300,以下是該論文的摘要原文:Mathematicalreasoningposesasignificantchallengeforlanguagemodelsduetoitscomplexandstructurednature.Inthispaper,weintroduceDeepSeekMath7B,whichcontinuespretrainingDeepSeekCoderBasev1.57Bw...
2025-02-12 14:21:14 2412瀏覽 0點贊 0回復 0收藏
1、為什么需要DPORafailov等人在2023年發表了一篇論文《DirectPreferenceOptimization:YourLanguageModelisSecretlyaRewardModel》,該論文提出了一種新的訓練方法,稱為直接偏好優化(DPO),該論文介紹:雖然大規模無監督語言模型(LM)可以學習廣泛的世界知識和一些推理技能,但由于其訓練完全無監督,因此很難精確控制其行為。現有的獲得這種可控性的方法是收集模型生成相對質量的人類標簽,并微調無監督語言模型以符合這些偏...
2025-02-04 20:36:48 2363瀏覽 0點贊 0回復 0收藏
1、什么是位置編碼在語言中,一句話是由詞組成的,詞與詞之間是有順序的,如果順序亂了或者重排,其實整個句子的意思就變了,所以詞與詞之間是有順序的。在循環神經網絡中,序列與序列之間也是有順序的,所以循環神經網絡中,序列與序列之間也是有順序的,不需要處理這種問題。但是在Transformer中,每個詞是獨立的,所以需要將詞的位置信息添加到模型中,讓模型維護順序關系。位置編碼位置編碼就是將helloworld!的token和位置...
2025-01-20 12:07:07 1988瀏覽 0點贊 0回復 0收藏