研究志愿規(guī)劃AIAgent初衷研究領(lǐng)域AIAgent方案. 多刷了刷抖音張雪峰老師直播錄屏那些高贊視頻, 還看了人民日報(bào)點(diǎn)評張雪峰說:科學(xué)填報(bào)志愿, 切莫被就業(yè)焦慮, 賺錢所綁架, 所有專業(yè)都有存在的意義... 然后就是滿屏的一邊倒支持張雪峰老師的評論. 就在去年ChatGPT問世前, 誰又能想到智力勞動就這么被替代了. 當(dāng)初設(shè)計(jì)的專業(yè)分類. 定是沒有預(yù)料到大模型帶來的變革. 但也是同意人民日報(bào)說的, 高考志愿填報(bào)的信息差, 不能靠網(wǎng)紅來補(bǔ). 畢竟張雪峰老師機(jī)構(gòu)的志愿填報(bào)太貴也太搶手. 更廣大的考生還是要靠老師、家長、小紅書、百度去填報(bào)志愿. 現(xiàn)在多加一個(gè)高考志愿規(guī)劃AIAgent.
一、高考志愿規(guī)劃AIAgent方案
領(lǐng)域AIAgent方案
構(gòu)建領(lǐng)域AIAgent是大模型在領(lǐng)域應(yīng)用的途徑之一. 該系列文章試圖通過開源框架與數(shù)據(jù)手搓一個(gè)高考志愿填報(bào)AIAgent探討以下問題:
1 大模型在AIAgent方案中的作用. 期望其是核心, 負(fù)責(zé)問題拆解、計(jì)劃等功能 .
2 AIAgent與領(lǐng)域模型、系統(tǒng)的協(xié)同.
3 領(lǐng)域數(shù)據(jù)準(zhǔn)確性問題, 研究搜索引擎與領(lǐng)域知識庫的結(jié)合.
背景:張雪峰老師3小時(shí)到賬3個(gè)多億熱搜
張雪峰老師的峰學(xué)蔚來為2024年的考生推出了價(jià)值17999元的圓夢卡,該服務(wù)包含四次專業(yè)填報(bào)咨詢、志愿規(guī)劃視頻等內(nèi)容。盡管價(jià)格并不算低,但焦慮的家長們熱情依舊不減, 2萬個(gè)名額已售空, 3小時(shí)到賬3個(gè)多億, 太火爆了.百度查高考填報(bào), 轉(zhuǎn)到掌上高考. 對比張雪峰的志愿規(guī)劃, 缺少的當(dāng)前社會各行各業(yè)情況, 以及結(jié)合個(gè)人情況的分析.
張雪峰的直播關(guān)于院校選擇、專業(yè)分析、備考方法等內(nèi)容的輸出.如告知想學(xué)氣象專業(yè)的同學(xué),清華氣象專業(yè)和南京某非985、211院校氣象專業(yè)單位基本上是一樣的. 普通家庭的孩子更要優(yōu)先選擇一個(gè)可以讓自己過得好的專業(yè)比所謂理想實(shí)際的多, 要選有專業(yè)壁壘的專業(yè)等等. 再加上風(fēng)趣幽默的說話風(fēng)格, 這波流量變現(xiàn),合情合理。
接下來我們看看如何手搓一個(gè)高考志愿AIAgent, 口號:讓每一位考生都能享受到免費(fèi)、個(gè)性化、精準(zhǔn)的高考志愿規(guī)劃服務(wù)!
高考志愿AIAgent應(yīng)該有的能力:
對標(biāo)張雪峰老師. 張雪峰老師的價(jià)值不在告知預(yù)估多少分能考什么學(xué)校.而是對社會各行業(yè)學(xué)校與就業(yè)的關(guān)系理解. 在學(xué)生想學(xué)法律, 又考不上五院四系, 張老師會建議期望就業(yè)地域的法學(xué)院好于外地一般211法學(xué)院.
1 預(yù)估的分?jǐn)?shù)找到那些學(xué)??梢詧?bào)考,這是基操, 也是當(dāng)前在線志愿填報(bào)干的事.
2 四年后的行業(yè)前景
報(bào)考志愿需要的是四年后的就業(yè)前景. 通常用當(dāng)前的行業(yè)前景. 但19、20年的考生, 當(dāng)時(shí)房地產(chǎn)還在后高峰期, 選了建筑系, 可就虧了.
3 當(dāng)前的行業(yè)就業(yè)情況
專業(yè)對口就業(yè)率, 刷張雪峰老師的視頻看到這個(gè)專業(yè)名詞, 又是個(gè)關(guān)鍵卻難以獲得的數(shù)據(jù).
4 專業(yè)、行業(yè)潛規(guī)則
類似清華氣象專業(yè)和南京某非985、211院校氣象專業(yè)單位基本上是一樣的. 大模型當(dāng)然也不會知道這些, 因?yàn)樗y以準(zhǔn)確從噪音中區(qū)分事實(shí). 這才是張雪峰老師的核心能力. 構(gòu)建潛規(guī)則知識庫并作為AI Agent的一個(gè)環(huán)節(jié)是需要重點(diǎn)探討的問題.
5 基于學(xué)生、家庭、大學(xué)城市、產(chǎn)業(yè)間的關(guān)系提供建議.
如果將高考志愿AIAgent對標(biāo)行業(yè)最優(yōu)的方案提供者. 這里我們就能看到領(lǐng)域AIAgent的困難: 領(lǐng)域服務(wù)最核心的數(shù)據(jù)、規(guī)則很可能不可公開收集.
接下來就開始我們手搓高考志愿AIAgent了.
AIAgent框架選擇
國外的AIAgent框架都先Pass, 試用了下MetaGPT和AutoGPT, 主要他們都是基于OpenAI大模型配置的, 改用國內(nèi)的大模型有些麻煩.
字節(jié)的Coze(coze.cn), 可以通過配置實(shí)現(xiàn)AIAgent, 已有好些高考志愿的字節(jié)叫Bot的AIAgent. 試用了下, 應(yīng)該P(yáng)rompt結(jié)合大模型實(shí)現(xiàn)的, 有個(gè)還連了搜索引擎. 但搜索引擎無法查詢準(zhǔn)確的高考分?jǐn)?shù)線. 字節(jié)的Coze功能挺多, 有工作流, Action等等. 可惜API還沒發(fā)布.
選了螞蟻金服的AgentUniverse, 簡單測了下就跑通了測試用例, 關(guān)鍵他們還有個(gè)群可以直接問.
搜索引擎用KFind
阿里的道哥出來創(chuàng)業(yè), 道哥出品, 必是精品. https://kmind.com可以申請?jiān)囉? 也可以后臺發(fā)消息, 我之前已申請可以發(fā)邀請碼.
數(shù)據(jù)
1 高考各省市的投檔線,以及各校的投檔線
2023年高考各省市的投檔線有, 但只找到211的100多所高校2023年的投檔線數(shù)據(jù),先用這個(gè)。
本來是希望搜索引擎做的, KFind查高考分?jǐn)?shù)效果不好, 天工AI 搜索效果不錯.
2 行業(yè)營業(yè)額與利潤
AKShare(https://akshare.akfamily.xyz/data/index.html) 是基于Python 的開源財(cái)經(jīng)數(shù)據(jù)接口庫,其中有行業(yè)指數(shù)行情數(shù)據(jù), 但股票有跌有跌, 不足以代表行業(yè)當(dāng)前前景。于是使用行業(yè)上市公司營業(yè)額與利潤的匯總值代表行業(yè)當(dāng)前.
3 行業(yè)就業(yè)情況
Boss直聘等網(wǎng)站有行業(yè)收入、人員報(bào)告, 但要收集全行業(yè)信息并整理不容易. 公司年報(bào)中也有公司人數(shù), 工資支出, 但AKShare中沒有提供相關(guān)數(shù)據(jù).
既然是做研究, 本著有啥用啥的原則, 太麻煩的事自然不做. 打算先用搜索看看效果.
4 專業(yè)、行業(yè)潛規(guī)則
這最關(guān)鍵的核心數(shù)據(jù)也是無法收集. 先將張雪峰老師的金句放到知識庫, 再用大模型查詢.
初步方案:
就是先設(shè)計(jì)個(gè)簡單流程, 全要素問題能跑出個(gè)結(jié)果, 能將以上的數(shù)據(jù)都用上,重點(diǎn)測試下:
1 張雪峰老師的金句知識庫泛化效果待觀察.
2 大模型能做AIAgent的計(jì)劃部分嗎?
3 關(guān)鍵數(shù)據(jù)知道去搜索和查知識庫. 有些Text2SQL的意思.
二、 代碼實(shí)現(xiàn)
例子:手工調(diào)用大模型&搜索引擎KFind回答填報(bào)志愿問題
提問:
上??忌A(yù)估450分。想離開上海,去其他一二線城市,之后希望在一二線城市工作,偏好技術(shù)與藝術(shù)結(jié)合的專業(yè),如何填報(bào)志愿。
回答:
### 高考專業(yè)申報(bào)建議在當(dāng)今社會,隨著科技與文化的深度融合,藝術(shù)設(shè)計(jì)領(lǐng)域展現(xiàn)出前所未有的活力與潛力,尤其在數(shù)字媒體、交互設(shè)計(jì)、視覺傳達(dá)等方向,為有志于藝術(shù)創(chuàng)新與技術(shù)應(yīng)用結(jié)合的青年學(xué)子提供了廣闊的發(fā)展舞臺。根據(jù)當(dāng)前就業(yè)市場趨勢及地域特色,以下是一份精心準(zhǔn)備的專業(yè)申報(bào)建議,旨在幫助您做出更符合未來職業(yè)規(guī)劃的選擇。#### 專業(yè)方向推薦1. **數(shù)字媒體藝術(shù)**:結(jié)合藝術(shù)創(chuàng)意與數(shù)字技術(shù),探索多媒體內(nèi)容創(chuàng)作的新邊界。2. **交互設(shè)計(jì)**:聚焦用戶體驗(yàn),設(shè)計(jì)人與產(chǎn)品間的高效互動方式。3. **視覺傳達(dá)設(shè)計(jì)**:通過圖形、文字等視覺元素,傳達(dá)信息與理念,廣泛應(yīng)用于廣告、包裝等領(lǐng)域。4. **游戲設(shè)計(jì)**:融合創(chuàng)意故事講述、美術(shù)設(shè)計(jì)與軟件開發(fā),創(chuàng)造引人入勝的游戲體驗(yàn)。#### 推薦申請?jiān)盒#ò闯鞘校? **北京**:北京師范大學(xué)、北京工業(yè)大學(xué),這兩所高校在藝術(shù)與科技領(lǐng)域有著深厚的教學(xué)資源和研究基礎(chǔ)。- **廣州**:暨南大學(xué),其藝術(shù)設(shè)計(jì)學(xué)院在數(shù)字媒體與視覺傳達(dá)方面享有良好聲譽(yù)。- **杭州**:雖然浙江中醫(yī)藥大學(xué)主攻醫(yī)學(xué)領(lǐng)域,但在杭州這座城市,其周邊的藝術(shù)氛圍和技術(shù)環(huán)境對設(shè)計(jì)類學(xué)生亦有積極影響。- **成都**:成都雖以成都中醫(yī)藥大學(xué)著稱,但該市作為西南文化中心,藝術(shù)設(shè)計(jì)類實(shí)習(xí)與就業(yè)機(jī)會不容忽視。- **南京**:南京理工大學(xué),工程技術(shù)與藝術(shù)設(shè)計(jì)的交叉融合為學(xué)生提供獨(dú)特視角。- **武漢**:武漢大學(xué),綜合型大學(xué)背景下的藝術(shù)設(shè)計(jì)教育,有利于學(xué)生跨學(xué)科學(xué)習(xí)。- **青島**:青島大學(xué),地處海濱,藝術(shù)設(shè)計(jì)專業(yè)結(jié)合地域特色,發(fā)展?jié)摿Υ蟆? **蘇州**:蘇州大學(xué),其藝術(shù)學(xué)院在傳統(tǒng)與現(xiàn)代設(shè)計(jì)的結(jié)合上獨(dú)具特色。#### 就業(yè)展望一二線城市,尤其是北京、深圳、上海等地,對數(shù)字媒體藝術(shù)、交互設(shè)計(jì)、視覺傳達(dá)設(shè)計(jì)及游戲設(shè)計(jì)等專業(yè)的畢業(yè)生需求旺盛。這些領(lǐng)域的應(yīng)屆生起薪可觀,如北京平均月薪可達(dá)13283元,深圳和上海分別為12783元和12317元,反映出市場對高質(zhì)量藝術(shù)設(shè)計(jì)人才的高度認(rèn)可??傊谶x擇專業(yè)與目標(biāo)院校時(shí),建議結(jié)合個(gè)人興趣、職業(yè)愿景及地域發(fā)展優(yōu)勢綜合考慮,充分利用各城市的教育資源與產(chǎn)業(yè)環(huán)境,為未來職業(yè)生涯奠定堅(jiān)實(shí)基礎(chǔ)。
所謂手工就是人工拆解問題,提取關(guān)鍵信息,再構(gòu)建問題發(fā)給大模型或搜索引擎。過程在下表中:
AIAgent復(fù)現(xiàn)
上文寫過期望大模型在方案中是核心, 負(fù)責(zé)問題拆解、計(jì)劃等功能 . 這是后話,先將上面手工版本上在AgentUniverse框架中復(fù)現(xiàn)。
步驟1:修改agent配置文件
sample_standard_app\app\core\agent\peer_agent_case\demo_executing_agent.yaml
sample_standard_app是AgentUniverse提供的示例代碼,我們就在其中修改。將大模型改為千問,搜索為KFind,因?yàn)槲覀円脧堁┓謇蠋熃鹁渥鳛楹诵囊?guī)劃一部分,所以還需要AgentUniverse中Knowledge功能。
info: name: 'demo_executing_agent' description: 'demo executing agent'profile: prompt_version: demo_executing_agent.cn llm_model: name: 'qwen_llm' model_name: 'qwen-max' temperature: 0.4plan: planner: name: 'executing_planner'memory: name: ''action: knowledge: - 'demo_knowledge' tool: - 'kfind_search_tool'#mock_search_toolmetadata: type: 'AGENT' module: 'agentuniverse.agent.default.executing_agent.executing_agent' >
步驟2:KFind搜索調(diào)用
sample_standard_app\app\core\tool\kfind_search_tool.py
密鑰,https://kmind.com可以申請?jiān)囉? 也可以后臺發(fā)消息, 我之前已申請可以發(fā)邀請碼. 代碼如下:
import requestsimport jsonfrom agentuniverse.agent.action.tool.tool import Tool, ToolInputfrom agentuniverse.base.util.env_util import get_from_envurl = 'https://hikos.cn/kmind/api/act'headers = { 'Content-Type': 'application/json'}ACCESS_KEY = get_from_env("ACCESS_KEY")ACCESS_SECRET_KEY = get_from_env("ACCESS_SECRET_KEY")BASE_DATA = { "actCode": "searchAndAnswer", "accessKey": ACCESS_KEY, "accessSecretKey": ACCESS_SECRET_KEY, "actExecType": "sync", "isStreaming": False, "apiRequest": { "input": "" }}>
經(jīng)過這兩步,其實(shí)我們就已經(jīng)可以通過AIAgent復(fù)現(xiàn)之前手工的示例。
步驟3:將張雪峰老師金句存入Knowledge
AgentUniverse當(dāng)前版本是GPT4的embedding. 就找他們要了千問的,當(dāng)天就發(fā)我了,后續(xù)也會在新版本更新。必須贊下。
agentuniverse\agent\action\knowledge\embeddingqwen_embeding.py
from typing import List, Optionalimport dashscopefrom langchain_community.embeddings import DashScopeEmbeddingsfrom pydantic import Fieldfrom agentuniverse.agent.action.knowledge.embedding.embedding import Embeddingfrom agentuniverse.base.util.env_util import get_from_env>
當(dāng)前版本沒支持txt的文件讀取,而且我下載的張雪峰老師金句是每行就是一個(gè)觀點(diǎn),每行作為一個(gè)Document比AgentUniverse中按長度生拆的好。
agentuniverse\agent\action\knowledge.reader.file.txt_reader
from pathlib import Pathfrom typing import List, Optional, Dictfrom agentuniverse.agent.action.knowledge.reader.reader import Readerfrom agentuniverse.agent.action.knowledge.store.document import Document>
然并沒有啥用, embedding的query查不到, 因?yàn)槭占膹堁┓謇蠋熃鹁錄]有覆蓋當(dāng)前問題的.又試了下用大模型提取張雪峰老師金句主題詞, 再提取問題主題詞, 用主題詞匹配的方式, 找到問題相關(guān)觀點(diǎn).
步驟4:大模型拆解問題
之前的例子是手工拆解問題,也測試用大模型拆, AgentUniverse也提供了拆解的例子. 試了都還達(dá)不到人工拆解的效果. 也看到Chain of Thought(CoT)的一些方案, 后續(xù)還將繼續(xù)研究下其他方案. 但也不用太深究, 畢竟GPT5不久也就面世.
zero_shot_template_decomposition = """ introduction: 你是高考志愿填報(bào)專家。 instruction: 需要遵守下面的規(guī)則: 1.去除重復(fù)的信息。 2.去除對回答原始問題沒有幫助的信息。 3.簡要拆解問題,重點(diǎn)突出。 4.拆解問題中不要重復(fù),一個(gè)問題只出現(xiàn)一次。 5.盡量多的使用數(shù)值類信息。 6.提問需要高度注意信息的時(shí)效性。 Task: 將給定的問題分解成更易于回答的簡單子問題。 注意:只能返回分解后的問題。不要回答它們中的任何一個(gè),包括原始問題。. 原始問題: {question} 分解后的問題: """
三 、改進(jìn)&總結(jié):
價(jià)值判斷
智譜清言出了2024高考志愿填報(bào)助手, 其中調(diào)用一些Action 查詢具體上線分?jǐn)?shù)等. 算是目前看到比較好的考志愿規(guī)劃AIAgent. 但完全沒有張雪峰老師那些經(jīng)驗(yàn)和判斷, 也就沒啥特別價(jià)值. 沒有價(jià)值判斷的AIAgent是不值錢的.
而光靠當(dāng)前的大模型難以提供價(jià)值判斷, 這應(yīng)該是AIAgent方案附加值之一. 之前我們嘗試用張雪峰老師的金句提供價(jià)值判斷, 同樣的, 我們還可以用大模型提取巴菲特關(guān)于大學(xué)專業(yè)的意見.
喬布斯生前一次訪談中提到”我認(rèn)為展望未來50至100年,如果我們真能開發(fā)出一款設(shè)備,它可以捕捉潛在精神,或者一套潛在的原則,或者是潛在的看待世界的方式,這樣當(dāng)下一個(gè)亞里士多德出現(xiàn)的時(shí)候……也許他可以隨身攜帶這款設(shè)備,將所有東西都輸入其中。這樣當(dāng)這個(gè)人死后,我們就可以問這款設(shè)備‘喂,對此亞里士多德會怎么說?’,我們得到的答案或許是錯誤的,或許是正確。但是想到此我就已經(jīng)很激動了。” 借助與大模型的能力, 這是可以實(shí)現(xiàn)的. 在未有強(qiáng)人工智能之前, 通過大模型、 AIAgent將領(lǐng)域?qū)<摇⑾日軅兊挠^點(diǎn)應(yīng)用到具體的場景下, 為普通人決策提供建議值得探索.
領(lǐng)域事實(shí)
陽光志愿是官方提供的院校專業(yè)信息(gaokao.chsi.com.cn/zyck).在規(guī)劃之初, 我們就提到高考填報(bào)志愿不只是分?jǐn)?shù)能上什么院校專業(yè)的問題. 張雪峰老師的價(jià)值更多是在行業(yè)就業(yè)、行業(yè)潛規(guī)則的了解. 本案例中, 我們用KFind作為查詢事實(shí)的接口, 算是對搜索引擎提出過高的要求.
關(guān)于行業(yè)發(fā)展, 上文提到通過AkShare獲取行業(yè)營收以及過去幾年的增長率. 就如申萬半導(dǎo)體子行業(yè)2024年一季度度營收同比增長20.81%, 利潤4%, 再結(jié)合國家的扶持, 當(dāng)然是欣欣向榮的行業(yè)領(lǐng)域. 當(dāng)能力、興趣匹配, 必須無腦肉身入股.
對于一些相對成熟的行業(yè),法律、醫(yī)生等, 完全無法靠行業(yè)營收確認(rèn)其中就業(yè)情況. 這些行業(yè)的實(shí)際就業(yè)情況, 就業(yè)潛規(guī)則, 只有從業(yè)者比較情況. 這就難以收集了.
人生是曠野, 高考填報(bào)志愿就是曠野中一個(gè)重要的選擇. 后續(xù)還將繼續(xù)研究, 歡迎探討:
1 大模型、AIAgent問題拆解.
2 事實(shí)&真相識別.
3 價(jià)值判斷.
作者簡介
袁峻峰,《人工智能為金融投資帶來了什么》作者,復(fù)旦大學(xué)金融學(xué)碩士,F(xiàn)RM金融風(fēng)險(xiǎn)管理師,之前在螞蟻金服人工智能部四年,目前就職于國內(nèi)頭部券商,本文僅代表個(gè)人觀點(diǎn),不可作為投資依據(jù)。
筆者關(guān)注于金融投資領(lǐng)域數(shù)字化、智能化,以及ChatGPT等新技術(shù)帶來的經(jīng)濟(jì)、社會影響等,歡迎探討。