混合代理 (MoA) 是一种新颖的方法,它利用多个LLMs代理的集体优势来提高绩效,实现最先进的结果。通过采用分层架构,每层包含多个LLM代理,MoA 在仅使用开源模型的情况下,在 AlpacaEval 2.0 上的表现显着优于 GPT-4 Omni 的 57.5%,得分为 65.1%!
具体内存请参照:https://github.com/togethercomputer/MoA
下面是修改后的代码,使用 ollama 来进行测试:
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 46 47 48 49 50 51 52 53 54 55 56 57 58 |
# Mixture-of-Agents in 50 lines of code import asyncio import os from together import AsyncTogether, Together client = Together( base_url="http://127.0.0.1:11434/v1/", api_key = "ollama", ) async_client = AsyncTogether( base_url="http://127.0.0.1:11434/v1/", api_key = "ollama", ) user_prompt = "在北京有哪些有趣的活动?" reference_models = [ "command-r-plus", # 97 GB "aya:35b", # 58 GB "gemma2:27b", # 41 GB "qwen2:72b", # 62 GB ] aggregator_model = "qwen2:72b" aggreagator_system_prompt = """你已经收到来自不同开源模型的若干回复,这些回复是对最新用户查询的回应。你的任务是将这些回复综合成一个高质量的回复。关键在于对这些回复中的信息进行批判性评估,认识到其中有些可能带有偏见或不准确。你的回复不应只是简单地复制这些答案,而应提供一个经过改进的、准确且全面的回应。请确保你的回复结构良好、连贯,并且符合最高的准确性和可靠性标准。 模型的回复:""" async def run_llm(model): """Run a single LLM call with a reference model.""" response = await async_client.chat.completions.create( model=model, messages=[{"role": "user", "content": user_prompt}], temperature=0.7, max_tokens=4096, ) print(f"{model} response : {response.choices[0].message.content}") return response.choices[0].message.content async def main(): print(f"user prompt:{user_prompt}") results = await asyncio.gather(*[run_llm(model) for model in reference_models]) finalStream = client.chat.completions.create( model=aggregator_model, messages=[ {"role": "system", "content": aggreagator_system_prompt}, {"role": "user", "content": ",".join(str(element) for element in results)}, ], stream=True, ) print(f"final response :") for chunk in finalStream: print(chunk.choices[0].delta.content or "", end="", flush=True) asyncio.run(main()) |
下面是运行的结果
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 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 |
python moa.py user prompt:在北京有哪些有趣的活动? aya:35b response : 答:北京是一个有着深厚历史文化底蕴的城市,有很多有趣的活动。例如,你可以去故宫博物馆参观古代皇帝的居所,也可以去长城爬山远足,体验这一世界 奇迹。 qwen2:72b response : 北京是一个充满活力的城市,全年都有许多有趣的活动。下面是一些你可以参加的活动: 1. 参观博物馆和历史古迹:故宫、天安门广场、颐和园、圆明园等都是必去的地方。 2. 品尝北京小吃:炸酱面、豆汁儿、灌肠、糖葫芦、羊肉泡馍等等。 3. 赏花:春天可以去玉渊潭公园赏樱花,夏天可以去紫竹院荷花池赏荷花,秋天可以去香山看红叶,冬天则可以上长城去看雪景。 4. 逛市集和夜市:如南锣鼓巷、798艺术区、三里屯等都是非常受欢迎的景点,在这里你不仅可以品尝当地美食,还可以购买到一些手工艺品。 5. 看京剧和杂技表演:在北京观看一出精彩的京剧或杂技表演是非常有趣的体验。建议提前订票并选择座位在中间的位置。 6. 体育活动:如果你喜欢运动的话可以去天安门广场晨跑,或者在后海湖上划船,在奥体中心游泳、打篮球等等。 7. 参加文化活动:如北京国际电影节、中国音乐节、北京图书订货会等等,这些大型的文化活动通常都在特定的时间举行。 希望以上信息对你有帮助。 gemma2:27b response : 北京有很多有趣的活动,要根据你的兴趣来推荐! **你对什么感兴趣呢?** * **历史文化:** 你喜欢参观古迹吗?故宫、颐和园、天坛都是不错的选择,但除了这些经典景点,北京还有很多其他的文化体验机会,比如: * **探索历史街区:** 比如胡同、老北京的四合院等。 * **参观博物馆:** 北京拥有众多的博物馆,例如国家博物馆、首都博物馆、中国国家博物馆等等。 * **体验传统艺术:** 学习京剧脸谱画、书法、绘画,或者去观看演出或展览。 * **品尝京味美食:** 参加北京的特色美食之旅,品尝像烤鸭、豆汁儿、炸酱面等美味。 * **户外活动:** * **长城徒步:** 在不同的长城段上进行徒步旅行,例如 Mutianyu 或 Simatai 西址 都是不错的选择。 * **颐和园游船:** 在湖水中悠闲地划船,欣赏美丽的景色,享受宁静的氛围。 * **逛三里屯:** 这是一片充满时尚、潮流和美食的区域,适合喜欢购物和社交的游客。 * **其他活动:** * **看一场电影或演出:** 北京有许多电影院和剧场,可以观看最新的中外影片,或者体验传统戏曲表演,例如京剧、评剧等等。 * **逛街、吃美食:** 在王府井、西单等地体验北京的商业繁华,品尝各种特色小吃和北京菜肴,例如: * **王fujing 的老字号店铺:** * **老北京风味:** 尝试一些像 王道初、东来顺 等老字号的菜肴,例如老北京烤鸭、炸酱面、豆腐脑等等。 * **品尝中国传统美食:** 体验北京的特色美食,探索当地文化和历史。 * **参加当地节日:** 在不同时间体验北京的城市文化,例如 庙会、音乐节等,感受中国传统的民俗活动。 * **其他例子:** * **北京国际电影节:** 每年在秋季举办一次,你可以观赏到世界各地的优秀影片,与导演和演员近距离接触,并有机会参加电影论坛和展映活动。 * **北京时间:** 一些知名导演和演员会来这里参加 "电影之夜" 和 "电影早餐" 等活动,与 "北京电影节" 结合,可以体验到电影的魅力。 * **北京故宫博物馆:** 你可以欣赏到中国古代建筑的精美,并深入了解皇室的历史和文化。 **请告诉我你更喜欢什么类型的活动,我会给出更具体的建议。** 例如,你喜欢历史类活动、自然类活动、还是文化体验? 你想要体验北京的美食文化吗? 你喜欢热闹的氛围还 是安静的体验? command-r-plus response : 北京有很多吸引游客和当地人的活动。这里是一些想法: 1. 在长城上徒步旅行:这是世界上最著名的古迹之一,也是一个不可错过的经历。您可以选择靠近北京的几个不同区域进行远足,包括八达岭、慕田峪或司马台的部分。 2. 参观故宫博物院(紫禁城):故宫是明朝和清朝皇帝的家园,有近600年的历史,也是世界最大宫殿建筑群之一。它是了解中国文化与历史建筑的绝佳方式。 3. 在天坛公园散步:该公园于1420年为明成祖建造用于举行典礼之用。它包括令人惊叹的建筑以及美丽而广阔的花园供您探索。这是一个远离城市喧嚣并沉浸在自然和历史中的好 地方。 4. 探索北京胡同:徒步或骑自行车游览传统街区,以了解这座城市的本地生活方式和文化魅力。许多这些小巷都有几百年的历史了。后海区和东城区是探索它们的好去处。 5. 在颐和园观看皇家花园:这是一个巨大的皇室综合体与湖泊、宫殿和华丽的景观区。这里对于那些对风景如画的建筑感兴趣以及寻找宁静氛围的人来说是个好地方放松并欣赏美 景的地方。 6. 品尝北京烤鸭和其他当地美食:享用一些世界上最知名的菜肴,例如北京烤鸭或爆肚(牛羊大肠火锅)。参观当地的夜市,如簋街或南锣鼓巷小吃一条街 final response : 北京作为中国的首都和历史名城,拥有丰富多彩的活动供游客与当地居民体验。无论你是对历史文化感兴趣,还是追求自然风光、美食探索,亦或是享受现代都市的魅力,北京都能满足你的需求。 1. **历史文化的沉浸**: - 参观故宫博物院(紫禁城),了解明清两代皇帝的生活和中国古代的辉煌建筑。 - 走访天坛公园,感受古代祭天仪式的庄严与自然美景。 - 探索北京胡同,体验老北京的传统生活方式。后海区和东城区是不可错过的地点。 2. **自然风光的探索**: - 长城徒步,选择八达岭、慕田峪或司马台等段落,感受世界奇迹的魅力。 - 在颐和园漫步,欣赏皇家园林的精美与湖光山色。 3. **美食文化的品尝**: - 尝试北京烤鸭、豆汁儿、炸酱面等地道美食,在簋街或南锣鼓巷夜市中尽享美味。 - 参加特色美食之旅,体验京味小吃的独特魅力。 4. **现代都市的享受**: - 逛三里屯,感受时尚与潮流的氛围,同时品尝各式国际及本地美食。 - 在王府井、西单等地购物和尝试当地风味。 5. **艺术文化的体验**: - 观看京剧表演或传统杂技,在国家大剧院等场所享受文化盛宴。 - 参观北京众多博物馆,如中国国家博物馆、首都博物馆,了解丰富历史与现代艺术。 6. **特殊节日的参与**: - 体验春节庙会、中秋节灯会等中国传统节日活动,感受浓郁的文化气息和社区活力。 - 北京国际电影节期间,欣赏中外优秀影片并与电影人交流互动。 请分享你更偏好的活动类型或具体需求,以便提供更加个性化的建议。无论是寻求历史类活动的深度探索,还是追求自然、美食文化的体验,北京都能为你量身打造一场难忘之旅。 希望这些建议能帮助您在北京规划一次丰富多彩且满足个人兴趣的旅行。如果您有其他特定需求或者想知道更多信息,请随时提问! |
这个其实就是每个模型响应一遍,然后让一个模型从这些响应获得更标准的答案。
上面测试的模型比较大,其实可以尝试不同的小模型进行混合,或许会比单一模型给出的答案好一点。
下面是小模型的一些修改:
1 2 3 4 5 6 7 8 |
reference_models = [ "llama3", # 5.4 GB "aya", # 18 GB "gemma2", # 8 GB "qwen2", # 5.7 GB ] aggregator_model = "aya" |
运行结果:
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 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 |
python moa.py user prompt:在北京有哪些有趣的活动? gemma2 response : 北京是一个充满活力的城市,有着丰富的文化和历史遗迹,还有许多有趣的活动可以参与! 为了给你更好的推荐,请告诉我你更感兴趣的活动类型: * **文化体验**: 你想参观博物馆、历史遗迹、寺庙,或者参加一些传统文化表演吗? * **美食探险**: 你想品尝北京特色美食,或者参加一些烹饪课程吗? * **户外活动**: 你想在公园散步、骑自行车,或者参加一些运动项目吗? * **娱乐休闲**: 你想看电影、去KTV,或者参加一些主题公园的活动吗? * **购物**: 你想在北京的特色街区购物,或者参加一些购物促销活动吗? 告诉我你的兴趣,我会为你推荐一些更具体的活动! qwen2 response : 北京作为中国的首都,不仅有着丰富的历史文化底蕴,还是一个充满现代活力的城市。在这里,您可以找到各种各样的有趣活动: 1. **参观故宫博物院**:这是全球最知名的古代皇家宫殿之一,收藏有无数珍贵的历史文物和艺术品。 2. **探索长城**:北京周围的长城是中国的标志性景点之一,如八达岭长城、慕田峪长城等都值得一游。如果您想体验更原生态的自然风光,可以选择去慕田峪或是金山岭等地, 这里的长城相对人少而保存完好。 3. **漫步南锣鼓巷**:这条胡同聚集了众多小商铺和美食摊贩,是体验北京老城区生活的绝佳地点。在这里,您可以品尝到地道的小吃,购买手工艺品,甚至尝试一些现场表演活 动。 4. **游览798艺术区**:这是一个以艺术工作室、画廊、设计工作室为主的工业遗产地改造成的艺术区,适合喜欢现代艺术和创意空间的朋友们。 5. **参观鸟巢(国家体育场)和水立方(国家游泳中心)**:这两个奥运场馆是2008年夏季奥运会的主要场所,现在不仅是体育赛事举办地,也对公众开放参观。您可以通过预订 特定的导览团深入了解这些建筑的奥秘。 6. **参加京剧表演**:京剧是中国的传统戏剧艺术之一,具有独特的魅力和韵味。北京有多家专业的剧院定期上演经典京剧剧目。 7. **游览颐和园和北海公园**:这两处园林不仅展示了中国古代园林艺术的精妙之处,也是放松身心、亲近自然的好去处。您可以在湖上划船或是在花园中漫步,享受宁静时光。 8. **参加夜市体验**:北京夜晚也有很多有趣的地方可以探索,比如东来顺小吃街等地方的美食和夜生活。这里是了解当地文化和品尝特色小吃的好地点。 这些活动只是冰山一角,北京作为一个国际大都市,还拥有更多的可能性等待着您去发现。无论是历史文化之旅还是现代城市探险,北京都提供了一种融合传统与现代、文化与创新的独特体验。 llama3 response : 🏙️ Beijing is a treasure trove of exciting activities to explore. Here are some fun things to do in Beijing: 1. **Hutong Exploration**: Wander through the narrow alleys (hutongs) and experience traditional Beijing culture, trying local street food and drinks. 2. **Great Wall Hiking**: Visit the famous Mutianyu or Badaling sections of the Great Wall of China for an unforgettable hike with breathtaking views. 3. **Forbidden City Tour**: Discover the magnificent Forbidden City, a palace complex that served as the imperial palace for 24 emperors. 4. **Peking Opera Performance**: Enjoy a traditional Peking Opera show, known for its acrobatic performances and vibrant colors. 5. **Acrobatics Show**: Catch a thrilling acrobatics performance, showcasing Chinese martial arts and aerial stunts. 6. **Foodie Adventures**: Sample the city's delicious street food, like jiaozi (dumplings), baozi (steamed buns), and zhajiangmian (noodles with fermented soybean paste). 7. **Museum Visits**: Explore the National Museum of China, Palace Museum, or the Capital Museum to learn about Chinese history, art, and culture. 8. **Temple Visit**: Visit the magnificent Temple of Heaven, a Taoist temple and UNESCO World Heritage Site. 9. **Lama Temple Tour**: Discover the serene surroundings and beautiful architecture of the famous Lama Temple (Yonghegong). 10. **Night Markets**: Shop for souvenirs or try local snacks at popular night markets like Nanluoguxiang or Wangfujing. 11. **Cycling in Beijing**: Rent a bike and explore the city's parks, hutongs, or bike paths along the Beiyang River. 12. **Hot Springs and Spa**: Relax and rejuvenate at one of the many hot springs and spas throughout the city. 13. **Martial Arts Training**: Learn traditional Chinese martial arts like tai chi, wushu, or kung fu from local masters. 14. **Beijing Opera Festival**: Attend this annual festival featuring traditional Peking Opera performances, music, and dance. 15. **China's National Games**: Catch a glimpse of the city's sporting spirit by attending China's National Games, which feature various sports like table tennis, badminton, or gymnastics. These are just a few examples of the many exciting activities to enjoy in Beijing. Be sure to plan ahead, as some attractions may require advance reservations or have limited operating hours. 😊 aya response : 答:在中国的北京,有一些有趣且独特的活动。例如:参观故宫博物院、游览长城、体验丝绸之路、参加京津冀文化节等。 final response : 北京是一个充满活力和历史魅力的大城市,为游客和当地居民提供各种各样令人兴奋的活动。以下是北京一些最受欢迎的活动: 1. **参观故宫博物院**:作为世界知名宫殿之一,故宫博物院是必游之地。这里的丰富收藏包括古代艺术品、文物和装饰物品,展示了中国皇家历史的辉煌。 2. **探索长城**:北京周围的长城是另一个标志性景点。从八达岭到慕田峪,每一段长城都提供独特的体验。随着日出或日落时分,您可以欣赏到壮丽的景色,这是一个令人难忘 的徒步之旅。 3. **体验京津冀文化**:北京是天津和河北两个省的门户,拥有独特的文化融合。通过参加京津冀文化节、探索当地的美食和传统手工艺品,以及参观历史古迹(如天津的南开大 学和河北的承德避暑山庄),您可以体验到这三个地区的丰富文化底蕴。 4. **享受美食**:北京有多种美食可供选择。除了著名的街头小吃如烤鸭、饺子、麻婆豆腐等,您还可以参加烹饪课程,了解如何制作这些美味佳肴。此外,北京还有许多精致的 餐厅和酒馆,可以品尝各种中国菜系。 5. **参观现代艺术展**:北京有几个著名的艺术区,如798艺术区、大望楼艺术区等。在这里,您可以欣赏现代艺术作品、互动装置和设计展览。这些艺术区也是创意空间和时尚美食的集散地。 6. **体验京剧表演**:京剧是中国传统戏曲的一种,具有独特的舞台艺术形式。通过观看专业剧组演出,您可以体验到京剧的精髓,感受其深厚的文化内涵和戏剧魅力。 7. **游览皇家园林**:北京的皇家园林不仅展示了中国古代园林艺术,也是放松身心的好地方。颐和园和北海公园都是良好的选择,您可以在这里漫步、划船或欣赏风景。 8. **参加体育活动**:如果你喜欢户外运动,北京有几个公园和体育设施可供选择。您可以尝试打网球、游泳、足球等运动,或者只是锻炼一下。 9. **探索夜生活**:北京的夜生活非常丰富,从KTV到酒吧,再到小吃街,都能满足你的需求。东来顺小吃街是品尝当地美食的好地方,而南锣鼓巷则提供一种充满活力和创意的文化体验。 10. **购物**:北京有几个著名的购物区,如王府井、老ベルエポック广场等。您可以在这里寻找特色商品,从传统手工艺品到时尚品牌产品,一应俱全。 以上是一些在北京可以参加的活动。根据你的兴趣和爱好,你可以选择适合你的活动。北京是一个充满活力和文化的城市,为游客提供了难忘的体验。 |