大規模言語モデル（LLM）シリーズ
シリーズリーダー

鵜林 尚靖 （九州大学 教授）

講師陣

中井 悦司 （グーグル・クラウド・ジャパン）
山口 光太 （サイバーエージェント）
坂本 一憲 （東京通信大学 准教授、WillBooster（株） ）吉岡 信和 （早稲田大学/NII）

Copyright (C) 2023 National Institute of Informatics, All rights reserved.

大規模言語モデル（LLM）シリーズ
シリーズ全体のゴール
LLMのベースとなる生成モデルの仕組み， LLMを組み込んだアプリ開発の手法，LLMのソフトウェア開発への適用，について基礎から応用までのスキルを幅広く習得する
基礎
２科目

生成モデルの基礎
画像や自然言語の生成モデルを理解するための基礎知識を習得

大規模言語モデルを組み込んだアプリ開発
LLMを組み込んだ新しいタイプのアプリを実装するスキルを習得
APIを介したLLM活用，チャットボットやQ&Aボットのプログラミング

DCGAN，Diffusion モデル，Transformer モデル，
マルチモーダル生成モデル等

応用
１科目

大規模言語モデルのソフトウェア開発への応用
要求抽出，設計，プログラミング，デバック，テストへLLMを応用する技術を習得
プロンプトパターンカタログの活用法，Generative Agent のソフトウェア開発への応用

人間と機械の新たな知的インタラクション

人間（開発者）

機械（LLM）

Copyright (C) 2023 National Institute of Informatics, All rights reserved.

LLM時代のソフトウェア開発とは
LLM = 自然言語コンピューティング
新たな知性（人間以外の知的存在）との出会い「2001年宇宙の旅」のHALとは？

Heuristically programmed
ALgorithmic computer です．
IBMよりも一歩先を行くコン
ピュータという説もあります（I →H, B → A, M → L）．

LLM
開発者

ソフトウェア開発へのインパクトl タスク自動化から仮想開発者群による自動化への転換
l 自然言語によるプログラミング（ノーコード）

常識人で物知りとしての仮想開発者（機械）ポイントl 常識人としての相談相手（合理的な判断を行う）
l 仮想開発者群による仮想プロジェクトチーム（LLMベースのマルチエージェントシステム）

Copyright (C) 2023 National Institute of Informatics, All rights reserved.

研究事例：
ソフトウェア開発プロジェクトの自動化
M ETAGPT: M ETA P ROGRAMMING FOR M ULTI -AGENTC OLLABORATIVE F RAMEWORK

エージェント（アーキテクト)

エージェント（プロダクトマネージャ)

arXiv:2308.00352v2 [cs.AI] 2 Aug 2023

Sirui Hong1
1Xiawu Zheng2 Jonathan Chen1 Yuheng Cheng3 Ceyao Zhang3 Zili Wang
Steven Ka Shing Yau4 Zijuan LIN2 Liyang Zhou5
Chenyu Ran1 Lingfeng Xiao6 Chenglin Wu1 ⇤DeepWisdom 2 Xiamen University 3 The Chinese University of Hong Kong, Shenzhen
4Nanjing University 5 University of Pennsylvania
6University of California, Berkeley

A BSTRACT
Recently, remarkable progress has been made in automated task-solving through the use of multiagents driven by large language models (LLMs). However, existing works primarily focus on simple
tasks, lacking exploration and investigation in complicated tasks mainly due to the hallucination
problem. This kind of hallucination gets amplified infinitely as multiple intelligent agents interact
with each other, resulting in failures when tackling complicated problems. Therefore, we introduce
MetaGPT, an innovative framework that infuses effective human workflows as a meta programming
approach into LLM-driven multi-agent collaboration. In particular, MetaGPT first encodes Standardized Operating Procedures (SOPs) into prompts, fostering structured coordination. And then, it further
mandates modular outputs, bestowing agents with domain expertise paralleling human professionals
to validate outputs and reduce compounded errors. In this way, MetaGPT leverages the assembly line
work model to assign diverse roles to various agents, thus establishing a framework that can effectively
and cohesively deconstruct complex multi-agent collaborative problems. Our experiments conducted
on collaborative software engineering tasks illustrate MetaGPT’s capability in producing comprehensive solutions with higher coherence relative to existing conversational and chat-based multi-agentsystems. This underscores the potential of incorporating human domain knowledge into multi-agents,
thus opening up novel avenues for grappling with intricate real-world challenges. The GitHub
repository of this project is made publicly available on: https://github.com/geekan/MetaGPT

エージェント（エンジニア)エージェント（プロジェクトマネージャ)

1 Introduction
Multi-agent systems that utilize Large Language Models (LLMs) offer remarkable prospects for replicating andenhancing human workflows. However, existing systems tend to oversimplify the complexities inherent to real-world
applications, as illustrated in recent studies [10, 11, 12, 13, 14, 15, 16], These systems primarily struggle to foster
effective collaboration through conversational and tool-based interactions, which leads to challenges such as achieving
coherent interactions, mitigating unproductive feedback loops, and guiding meaningful collaborative engagements [11,12, 35, 17, 29]. Multifaceted workflows demand well-structured Standardized Operating Procedures (SOPs) to ensure
efficacy. A comprehensive understanding and integration of real-world practices is essential. Addressing these prevalent
limitations and integrating these insights can facilitate the emergence of an innovative paradigm in the design andorganization of LLM-based multi-agent systems, thereby enhancing their effectiveness and applicability.
Furthermore, through prolonged collaborative practice, humans have developed widely accepted SOPs across many
domains[1, 2, 3]. These SOPs play a critical role in supporting task decomposition and efficient coordination. For
instance, in software engineering, the waterfall methodology delineates orderly phases of requirements analysis, systemdesign, coding, testing, and deliverables. This consensus workflow enables effective collaboration among multitudesof engineers[1, 2]. Moreover, human roles possess specialized expertise tailored to their assigned responsibilities:⇤Chenglin Wu (E-mail: alexanderwu@fuzhi.ai) is the corresponding author with DeepWisdom, 361000, China

エージェント（QAエンジニア）

LLMベースのマルチエージェントシステムによる自動化

Copyright (C) 2023 National Institute of Informatics, All rights reserved.

5

プロンプトパターンカタログ
ペルソナ・プロンプトパターン

プログラム
P仕様
S

機械

A

機械の性質
M

プロンプトパターンによる要求抽出

LLM
世界B

要求
R

世界の性質
W

ペルソナの例（人間）From now on, act as a security reviewer. Pay close attention to the security details of
any code that we look at. Provide outputs that a security reviewer would regarding
the code.
ペルソナの例（人間以外）

You are going to pretend to be a Linux terminal for a computer that has been
compromised by an attacker. When I type in a command, you are going to output thecorresponding text that the Linux terminal would produce.
[1] Jules White, Quchen Fu, Sam Hays, Michael Sandborn, Carlos Olea, Henry Gilbert, Ashraf Elnashar, Jesse Spencer-Smith, Douglas C. Schmidt,
A Prompt Pattern Catalog to Enhance Prompt Engineering with ChatGPT, arXiv:2302.11382, 2023

Copyright (C) 2023 National Institute of Informatics, All rights reserved.

科目履修の流れ
まずは，LLMで何ができるかプログラミングを通じて学ぼう！

大規模言語モデルを組み込んだアプリ開発（坂本）

次に，LLMのソフトウェア開発への適用について議論しよう！

大規模言語モデルのソフトウェア開発への応用（鵜林）

最後に，LLMの原理について理解を深めよう！

生成モデルの基礎（中井，山口）Copyright (C) 2023 National Institute of Informatics, All rights reserved.

大規模言語モデルを組み込んだアプリ開発
学習のゴールn 近年，大規模言語モデル（LLM）を活用したソフトウェアの普及が急速に進んでいます．
n LLMはチャットボットや要約などの自然言語処理が中心のソフトウェアで活用できるだけでなく，ユーザに自然言語ベースのユーザインターフェス（UI）を提供したり，LLMに行動の選択肢を選ばせることで，複雑な処理の自動化を実現したりできます．
n 本科目は，LLMを組み込むことでソフトウェアの価値を向上させたり，これまで存在しなかった新しいソフトウェアを実現したりするスキルを習得することを目的とします．
n 具体的には，Python言語やTypeScript言語と，LangChainなどの著名なLLM向けのフレームワークを組み合わせて，LLM搭載アプリケーションのプログラミング演習を実施します．

講義内容
１限目： LLMの基礎
２限目： プロンプティング演習
３限目： APIを介したLLM活用（基礎編）
４限目： LLM APIを活用したプログラミング演習（基礎編）
５限目： APIを介したLLM活用（発展編）
６限目： LLM APIを活用したプログラミング演習（発展編）
７限目： 発表とLLM最新動向の紹介

Copyright (C) 2023 National Institute of Informatics, All rights reserved.

大規模言語モデルのソフトウェア開発への応用
学習のゴールn 大規模言語モデル（LLM）の出現は社会の様々な活動に大きな影響を与えています．
n ソフトウェア開発も例外ではありません．LLMにより，プログラムを自動生成したり，バグを自動修正したりすることがある程度可能になっています．プログラムの自動生成，バグの自動生成の研究自体は2010年代におけるソフトウェア工学研究のメイントピックの一つで様々な方式がこれまで提案されてきました．しかし，LLMはこれらの方式よりも優れた性能を発揮しており，現在，伝統的なソフトウェア工学研究は大きな転換期に差し掛かっています．
n 本科目では，現在進行形で発展しているLLMのソフトウェア開発への応用について学びます．本科目が，これからのソフトウェア開発のあるべき姿について考え直す機会になれば幸いです．

講義内容
１限目： LLMとソフトウェア開発
２限目： LLMの基礎
３限目： プロンプトパターンカタログとソフトウェア開発への応用
４限目： 演習（自身のソフトウェア開発にLLMがどう活用できそうかについてグループディスカッション）
５限目： LLMによるソフトウェア開発環境の拡張
６限目： 演習（LLMの出現により従来のソフトウェア工学がどう変化するかについてグループディスカッション）
７限目： LLMとソフトウェア工学研究最前線

Copyright (C) 2023 National Institute of Informatics, All rights reserved.

生成モデルの基礎
学習のゴールn 実用レベルの生成モデルについて，さまざまな学術論文が出版されていますが，これらのモデルの仕組みを理解するための基礎知識を学びます．
n 数学的な説明は最低限に留めて，モデルの主要な機能をシンプルに実装したサンプル実装のコードを通し，「それぞれのモデルは何をしているのか」「なぜそれが生成モデルとして機能するのか」といった点を理解します．
n 最後に，実用レベルの生成モデルの紹介と実務利用に向けた取り組みについても紹介します．

講義内容
１限目： 前提知識
２限目： 画像生成モデルの基礎
３限目： 自然言語モデルの基礎
４限目： 演習
５限目： より高性能な生成モデル
６限目： 演習７限目： 生成AIの実務利用

Copyright (C) 2023 National Institute of Informatics, All rights reserved.

本シリーズのポイント① LLMを活用したソフトウェア開発の最前線が学べる② 演習を通じてLLMのアプリ開発が体験できる③ LLMの基礎理論について学べる

LLM

Copyright (C) 2023 National Institute of Informatics, All rights reserved.