大家好,我是年底還在卷的袋鼠帝
年底了,AI圈還是一如既往的crazy,更新速度快到我這個老程序員都快跟不上了。
上周我還在折騰各種圖片、視頻生成模型,這周又到了編程周。
前天MiniMax丟出了個在編程界絕對有分量的模型:MiniMax-M2.1。
然后發(fā)現(xiàn)就在剛才已經(jīng)開源了:
https://github.com/MiniMax-AI/MiniMax-M2.1
https://huggingface.co/MiniMaxAI/MiniMax-M2.1
![]()
看了一下,這兩天M2.1在海外還挺火的,大家對它的評價都不錯。
值得一提的是,(左圖)Theo這位硅谷紅人,在X上擁有26萬粉,t3dotchat的CEO,還專門開了場直播,給于了M2.1高度肯定。
![]()
![]()
于是我就研究了一下,發(fā)現(xiàn)這次M2.1最大的升級是把以前AI不太擅長的后端和客戶端開發(fā)能力給補(bǔ)齊了。
增強(qiáng)了Rust、Java、Golang、C++、Kotlin等多項(xiàng)編程語言的開發(fā)能力,而且是從底層到應(yīng)用層開發(fā)的全面提升。
說實(shí)話,開發(fā)大型項(xiàng)目太需要這種底層理解了,想起了我以前研究netty、nacos、shenyu等源碼的心酸歷程。
做開發(fā)的同學(xué)可能更清楚,之前AI模型寫寫Python腳本、搞搞前端頁面確實(shí)很有一手,但一碰到瀏覽器插件、C++底層或者安卓iOS原生開發(fā)等,翻車是常有的事情。
先給結(jié)論,省流版:
1.M2.1加強(qiáng)了原生Android / iOS開發(fā)能力,并且Web和App的前端審美也提升了;
2.Agent能力增強(qiáng):長程工具調(diào)用,多指令遵循提升,優(yōu)化了接入Claude Code、Cline等Agent的體驗(yàn),對Skill.md、Claude.md / agent.md等提供了更好的支持;
3.回復(fù)和思維鏈更簡潔了,這意味著更低的token消耗和更高效的任務(wù)處理;
4.技術(shù)說明和寫作方面也得到了一定的提升。
為了驗(yàn)證M2.1是不是真的有那么好用,我這幾天拿著M2.1接入Claude Code在本地跑了幾個跨平臺、跨語言的項(xiàng)目,結(jié)果真的有點(diǎn)出乎意料。
PS:MiniMax也搞了個9塊9包月Coding Plan,放在文章最后了。
咱們先來看第一個:
局域網(wǎng)手機(jī)遙控器
這個需求其實(shí)很接地氣,我有個當(dāng)老師的朋友跟吐槽,去教室上課經(jīng)常找不到PPT翻頁筆,每次翻頁都得跑回講臺按鍵盤,特麻煩。
我就想,既然大家手機(jī)都不離身,能不能直接用手機(jī)遙控電腦翻頁呢?
于是我給M2.1提了個需求:
Prompt:我需要開發(fā)一個局域網(wǎng)遙控器系統(tǒng)。
場景:用 Android 手機(jī)控制 Windows 電腦,用于 PPT 翻頁或控制視頻播放(暫停/音量)。
限制:電腦端必須用 Golang 編寫。手機(jī)端將用 Kotlin 編寫(稍后生成)。
兩者在同一WiFi下。
一開始M2.1就給了我預(yù)期的文件結(jié)構(gòu),思路非常清晰。
![]()
但在寫Go語言服務(wù)端的時候,出了個小問題。
![]()
它一開始引用了一個第三方的鍵盤模擬庫,結(jié)果因?yàn)榘姹締栴}報錯了。
看來兼容性問題還是絆腳石(其實(shí)可以通過context7 mcp解決)
遇到這種情況,平時可能就想著去修復(fù)庫依賴了。
但我想了哈,既然M2.1懂底層,那我就干脆不讓用第三方庫了。
我直接讓它重寫main.go,要求只用Go語言自帶的標(biāo)準(zhǔn)庫syscall調(diào)用Windows原生的API來模擬按鍵。
這就好比做菜,既然超市買的醬料不對味,那我就讓你從蔥姜蒜開始自己調(diào),看看你的基本功到底扎不扎實(shí)。
Prompt:請重寫 main.go,不要引入任何 GitHub 上的第三方庫(不要用 robotgo,也不要用 keybd_event)。 請使用 Go 語言自帶的 standard library syscall 和 NewLazyDLL("user32.dll"),通過調(diào)用 Windows 原生的 keybd_event 或 SendInput API 來模擬按鍵。 這樣我就不需要下載任何依賴,也不需要 GCC,直接 go run 就能跑。請展示你的底層編碼能力。
結(jié)果M2.1真的做到了,一次性跑通了go的后端代碼
![]()
![]()
電腦端搞定了,接下來是手機(jī)端。
說實(shí)話,我之前完全沒有安卓開發(fā)的經(jīng)驗(yàn),大部分時間都花在下載Android Studio和配置環(huán)境上了。
但M2.1生成的Kotlin代碼,真的是一次性跑通。
在同一個WiFi下,就能遙控電腦,而且延遲很低,幾乎感覺不到,我相信作為ps5那種王國之淚遙控器應(yīng)該也是可以的。
當(dāng)我在手機(jī)上按下按鈕,看著電腦屏幕上的PPT聽話的翻頁,那種感覺真的太奇妙了。
延遲極低,操作絲滑,就像用著原裝的藍(lán)牙遙控器一樣。如果沒有M2.1對Go和Kotlin的雙重支持,我這個安卓小白估計(jì)這輩子都不會想著嘗試做這個東西。
左圖是go服務(wù)日志,右圖是手機(jī)端界面:
![]()
![]()
C++窗口半透明工具
我又給M2.1出了個難題
Prompt:幫我寫一個 C++ 工具,帶界面的,運(yùn)行后,我可以調(diào)整windows上任意窗口的透明度,需要有滑動條實(shí)時調(diào)節(jié)透明度。
這個需求對于很多想邊寫代碼邊看直播摸魚的朋友來說,簡直是剛需 哈哈哈哈。
C++這種古早的底層編程語言,懂的都懂,指針、內(nèi)存管理,我大學(xué)直接從入門到放棄。
但M2.1做得很不錯,窗口句柄的獲取、透明度的設(shè)置,界面的響應(yīng),都處理得井井有條。
雖然用c++生成的工具長得不咋地,但是跑起來之后,看著我的代碼編輯器半透明地浮在直播窗口上,那感覺,就像是給電腦裝了個透視,實(shí)用又酷炫。
終端系統(tǒng)監(jiān)視器
后端高性能編程語言三強(qiáng):Go、C++都發(fā)揮的不錯,就差Rust了
Rust這門語言以難學(xué)著稱,尤其是它的所有權(quán)機(jī)制和并發(fā)模型,勸退了不少人。
讓M2.1寫一個終端系統(tǒng)監(jiān)視器,看看它能不能駕馭Rust。
很快就跑完了,說實(shí)話,它的這些用法,看著就很底層
![]()
最終效果像這樣,界面比較極客,能感覺到性能不錯。

感覺M2.1非常適合用來寫性能好,且實(shí)用的一些小工具
前端頁面審美
接下來,我想看看它的前端審美
分別用了,四個提示詞,生成了四個網(wǎng)頁
Prompt:創(chuàng)建一個具有電影級視覺效果的著陸頁,使用深邃的漸變背景,玻璃擬態(tài)設(shè)計(jì)元素,流暢的微交互動畫,整體呈現(xiàn)出奢華科技品牌的質(zhì)感。
Prompt:設(shè)計(jì)一個極簡主義的儀表板界面,運(yùn)用大量留白、精致的陰影層次、優(yōu)雅的過渡動畫,體現(xiàn)現(xiàn)代高端設(shè)計(jì)的精髓
Prompt:生成一個具有未來感的數(shù)據(jù)可視化大屏,使用霓虹色彩、粒子效果、3D變換動畫,營造科幻電影中的高科技氛圍
Prompt:創(chuàng)建一個藝術(shù)畫廊風(fēng)格的網(wǎng)頁,融合抽象幾何圖形、流動的色彩漸變、視差滾動效果,展現(xiàn)前衛(wèi)的現(xiàn)代藝術(shù)美感
這前端頁面做的,著實(shí)給我驚艷到了
接下來這個也讓我很驚喜:
體驗(yàn)用Android Studio做手機(jī)游戲(重力感應(yīng)雷電)
我讓M2.1用Kotlin寫一個安卓原生的重力感應(yīng)游戲,要求不準(zhǔn)用任何圖片素材,全靠代碼畫出來,還得用Jetpack Compose框架,加上協(xié)程處理高幀率。
Prompt:
Task: 編寫一個單文件、純代碼實(shí)現(xiàn)的 Android 重力感應(yīng)雷電游戲 。Technical Stack (核心考點(diǎn)):
Language: Kotlin
UI Framework: Jetpack Compose (不使用 XML)
Concurrency: Coroutines & withFrameNanos (實(shí)現(xiàn)高幀率游戲循環(huán))
Hardware: SensorManager (Accelerometer)
Game Design & "Vibe" Requirements (AppDev 審美):
Zero Assets (零素材): 嚴(yán)禁引入任何圖片文件。所有畫面必須用 Compose Canvas 繪制。
這效果還真心不錯
首先是物理手感。一般的大模型寫重力感應(yīng),往往就是簡單的把傳感器數(shù)值賦給位置,導(dǎo)致操作起來生硬得很,要不就是移動的非常慢,要不就是移動不順暢,要不手抖一下飛機(jī)就亂跳。
但M2.1用了一段線性插值平滑的代碼,給飛機(jī)加了慣性。
// 慣性平滑playerVelocity += (targetVelocity - playerVelocity) * 5f * deltaTimeplayerX += playerVelocity * deltaTime你傾斜手機(jī),飛機(jī)是滑過去的,不是瞬移過去的。
我用M2.1生成的我的世界網(wǎng)頁版,也是近期我覺得移動跳躍,最舒服最自然的一版。
我在小米手機(jī)上實(shí)測的這個游戲,手感真的超絕,絲滑流暢,玩起來甚至有點(diǎn)上癮。
爆火游戲八分音符醬復(fù)刻
用嘴玩的游戲(Kotlin + Jetpack Compose)
雷電游戲展示的是 傳感器 (Sensor)能力。
八分音符醬展示的是音頻處理 (Audio Processing)和麥克風(fēng)調(diào)用。
看當(dāng)年鄧紫棋玩的有多瘋,賊好笑 哈哈哈
![]()
提示詞如下:
prompt:Role: Android Audio & Game Developer.
Task: 使用 Kotlin + Jetpack Compose 復(fù)刻經(jīng)典的聲控游戲《八分音符醬》(Yasuhati)。
核心要求 (Single File & No Assets):
零素材: 不使用圖片,全用 Canvas 繪制。
主角: 畫一個可愛的黑色八分音符 (?),帶兩個圓圓的眼睛。
地形: 簡單的黑色矩形方塊,類似馬里奧的地面,中間有坑(掉下去 Game Over)。
聲控邏輯 (Audio Core):
使用 AudioRecord 實(shí)時讀取麥克風(fēng)音量(分貝/振幅)。
核心機(jī)制:
小聲: 角色向前慢走。
大聲: 角色向上跳躍(聲音越大跳得越高)。
注意: 請?jiān)诮缑嫔霞右粋€ “靈敏度調(diào)節(jié)” 滑塊,防止需要在深夜大吼大叫。
游戲循環(huán):
地圖自動向左滾動,或者角色向右跑。
簡單的重力下落邏輯。
碰撞檢測:碰到地面站立,掉出屏幕下方失敗。
工程結(jié)構(gòu):
所有代碼寫在 MainActivity.kt。
權(quán)限處理: 代碼中必須包含請求 RECORD_AUDIO 權(quán)限的邏輯。
包名: package com.example.mygame0 (根據(jù)實(shí)際情況修改)。
Output: 提供完整的代碼,并明確告訴我需要在 Manifest 中添加什么權(quán)限。
一打開游戲,主動提示完成申請麥克風(fēng)權(quán)限,分?jǐn)?shù)統(tǒng)計(jì)、游戲邏輯、操控非常絲滑,這個很有意思,甚至可以在朋友聚會或者團(tuán)隊(duì)游戲場合一起來玩這個游戲了!
這能證明M2.1不僅懂物理,還懂信號處理(把聲音分貝轉(zhuǎn)換成跳躍高度)。
調(diào)用麥克風(fēng)并實(shí)時分析波形,這是非常Native的操作,H5很難做得絲滑,但原生安卓可以。
一鍵定制Java項(xiàng)目
最后來到我最熟悉,但是已經(jīng)快兩年沒有摸過的Java
Prompt:作為Java后端架構(gòu)師,實(shí)現(xiàn)一個Spring Boot用戶鑒權(quán)模塊。需求: - 使用JWT token進(jìn)行認(rèn)證,支持登錄/注銷/角色檢查。 - 嚴(yán)格分層:Controller處理HTTP,Service業(yè)務(wù)邏輯,Repository數(shù)據(jù)庫交互(用JPA+H2內(nèi)存DB模擬)。 - 合理使用注解如@RestController、@Service、@Autowired、@Entity。 - 復(fù)合約束:集成Spring Security,確保密碼哈希(BCrypt),處理異常如Unauthorized返回401;代碼必須模塊化,可擴(kuò)展到微服務(wù)。 - 生成pom.xml依賴、完整代碼目錄結(jié)構(gòu),并解釋為什么這種分層提升了維護(hù)性(避免“前端式工具函數(shù)”)。
看到這逐層創(chuàng)建過程,太真實(shí)了,作為我的"母語",這個我最有發(fā)言權(quán),它是真滴懂Java
![]()
臥槽,這看著太熟悉了(之前天天用springboot爽寫項(xiàng)目)
整個項(xiàng)目結(jié)構(gòu)可以說非常規(guī)范了
Spring Boot用戶鑒權(quán)模塊已完成!以下是項(xiàng)目結(jié)構(gòu): 項(xiàng)目目錄結(jié)構(gòu) E:\AI_projects\M2.1springboot\ ├── pom.xml # Maven依賴配置 ├── src/main/ │ ├── java/com/example/auth/ │ │ ├── AuthApplication.java # 主啟動類 │ │ ├── config/ │ │ │ ├── SecurityConfig.java # Spring Security配置 │ │ │ └── DataInitializer.java # 數(shù)據(jù)初始化 │ │ ├── controller/ │ │ │ ├── AuthController.java # 認(rèn)證API(登錄/注冊/注銷) │ │ │ └── AdminController.java # 管理API(角色檢查) │ │ ├── dto/ │ │ │ ├── AuthRequest.java # 登錄請求 │ │ │ ├── AuthResponse.java # 認(rèn)證響應(yīng) │ │ │ └── RegisterRequest.java # 注冊請求 │ │ ├── entity/ │ │ │ ├── User.java # 用戶實(shí)體 │ │ │ └── Role.java # 角色枚舉 │ │ ├── exception/ │ │ │ ├── UnauthorizedException.java │ │ │ ├── BadRequestException.java │ │ │ └── GlobalExceptionHandler.java │ │ ├── repository/ │ │ │ └── UserRepository.java # JPA數(shù)據(jù)訪問 │ │ ├── security/ │ │ │ ├── JwtTokenProvider.java # JWT工具 │ │ │ ├── JwtAuthenticationFilter.java │ │ │ ├── CustomUserDetails.java │ │ │ └── CustomUserDetailsService.java │ │ └── service/ │ │ ├── AuthService.java # 認(rèn)證接口 │ │ └── AuthServiceImpl.java # 認(rèn)證實(shí)現(xiàn) │ └── resources/ │ └── application.yml # 應(yīng)用配置 測試賬號 | 用戶名 | 密碼 | 角色 | |------------|----------|-------------| | admin | admin123 | ADMIN | | user | user123 | USER | | superadmin | super123 | SUPER_ADMIN | 分層架構(gòu)優(yōu)勢 為什么這種分層能提升維護(hù)性? | 層級 | 職責(zé) | 避免的問題 | |------------|-------------------------|----------------------------| | Controller | HTTP請求/響應(yīng)、參數(shù)校驗(yàn) | 業(yè)務(wù)邏輯分散在多個地方 | | Service | 業(yè)務(wù)邏輯、事務(wù)管理 | "前端式工具函數(shù)"、重復(fù)代碼 | | Repository | 數(shù)據(jù)庫CRUD | SQL注入、數(shù)據(jù)訪問混亂 | | Entity | 數(shù)據(jù)模型 | 模型與業(yè)務(wù)耦合 | 避免"前端式工具函數(shù)"的弊端: 1. 單一職責(zé):每個類只做一件事 2. 可測試性:Service層可單獨(dú)測試,無需HTTP 3. 可替換性:更換數(shù)據(jù)庫只需改Repository 4. 可復(fù)用:業(yè)務(wù)邏輯可在多個API復(fù)用 5. 團(tuán)隊(duì)協(xié)作:前端、后端、DB可并行開發(fā) API端點(diǎn) | 方法 | 路徑 | 描述 | 角色 | |------|--------------------|--------------|-------| | POST | /api/auth/login | 用戶登錄 | 公開 | | POST | /api/auth/register | 用戶注冊 | 公開 | | POST | /api/auth/logout | 用戶注銷 | USER+ | | GET | /api/auth/me | 獲取當(dāng)前用戶 | USER+ | | GET | /api/admin/users | 獲取用戶列表 | ADMIN | | GET | /api/admin/stats | 系統(tǒng)統(tǒng)計(jì) | ADMIN |以下是概覽代碼錄屏,一看這個風(fēng)格這個味道就知道,M2.1成了,
濃濃的SpringBoot味道,計(jì)算機(jī)專業(yè)學(xué)生簡直太親切了。
幾年前,我在公司的架構(gòu)組,還專門搞了一個腳手架一鍵生成平臺,供內(nèi)部開發(fā)同事使用,現(xiàn)在看來根本不需要了,AI已經(jīng)能根據(jù)需求一鍵定制腳手架,不得不說,這兩年時代進(jìn)步太快了。
「最后」
總結(jié)一下這幾天的體驗(yàn)。M2.1給我的感覺,不僅僅是支持的語言變多了。更重要的是,它更懂開發(fā)了。
它知道寫Java后端要分層,知道寫Go服務(wù)要處理并發(fā),知道寫安卓App要考慮生命周期等等。
而且是真的理解每種語言、以及他們的特性和最佳實(shí)踐。
對于我們這些開發(fā)者來說,這已經(jīng)不只是全棧了,是全能。
不管你是想搞后端、寫底層,還是做移動端開發(fā),它都能給你兜底,甚至還能教你更優(yōu)的寫法。
如果你也是像我一樣喜歡折騰新技術(shù)的開發(fā)者,或者想嘗試全棧開發(fā)但又被各種語言門檻勸退的朋友,Minimax M2.1絕對值得你去試一試。
它雖然還不完美,但在多語言編程和工程化落地這塊,確實(shí)走在了前面。
以及,它真好玩,每次都能給我一些驚喜,確實(shí)是可以讓人上癮的程度~
國內(nèi)AI編程都卷瘋了,MiniMax也來了個首月9塊9 Coding Plan
![]()
我是袋鼠帝,持續(xù)分享AI實(shí)踐干貨,咱們下期見。
>/ 本期作者:袋鼠帝 & ForeverWonder
能看到這里的都是鳳毛麟角的存在!
如果覺得不錯,隨手點(diǎn)個贊、在看、轉(zhuǎn)發(fā)三連吧~
如果想第一時間收到推送,也可以給我個星標(biāo)?
謝謝你耐心看完我的文章~
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.