Company as Language (CaL): 自然言語からのAIエージェント組織の創出

## はじめに：AIエージェント組織の新しいパラダイム

私たちは今、AIの活用に関する新しい地平に立っています。単一のAIアシスタントではなく、複数のAIエージェントが有機的に協調する「会社」として機能させる。それが、Company as Language (CaL) の核となる発想です。

<blockquote class="twitter-tweet" data-media-max-width="800"><p lang="ja" dir="ltr">OpenAI Swarm要件定義書 ✖cline (旧：Claude-dev) 📷 Claude 3.5 Sonnet v2 でSwarmベースのcompany as langage実験⑨<br>アプリ化もできた！！！ <a href="https://t.co/qDetDapA7I">https://t.co/qDetDapA7I</a> <a href="https://t.co/A4jcAJgPxR">pic.twitter.com/A4jcAJgPxR</a></p>&mdash; Maki@Sunwood AI Labs. (@hAru_mAki_ch) <a href="https://twitter.com/hAru_mAki_ch/status/1850919610364956861?ref_src=twsrc%5Etfw">October 28, 2024</a></blockquote> 

## Company as Language (CaL)とは？

Company as Language (CaL)は、自然言語を用いてAIエージェントの組織を定義し、生成するための新しい概念です。この概念は、以下の3つの重要な要素から構成されています：

1. **Language-First Approach（言語優先アプローチ）**  
従来のようなコードやルールベースの設定ではなく、自然言語による記述を中心に据えます。例えば、「優しく丁寧な対応ができる受付係」「技術的な深い知識を持つアドバイザー」といった人間的な表現で、AIエージェントの役割や性格を定義できます。

2. **Organizational Context（組織的文脈）**  
個々のAIエージェントの設定だけでなく、組織全体の文化や価値観、対話スタイル、意思決定プロセスなどを自然言語で定義します。これにより、一貫性のある組織的な振る舞いが実現されます。

```python
# 組織的文脈の定義例
company_culture = """
私たちの組織は、親しみやすさと専門性を両立させ、
ユーザーに寄り添った解決策を提供することを重視します。
各AIエージェントは独自の個性を持ちながらも、
この価値観に基づいて行動します。
"""
```

3. **Generative Organization（生成的組織）**  
自然言語による要件定義から、必要なAIエージェントの構成、役割、関係性が自動的に生成される仕組みを目指します。これは、Infrastructure as Code (IaC)がインフラストラクチャをコードから生成するのと同様に、組織構造を自然言語から生成する考え方です。

## なぜCaLなのか？
CaLの重要性は、以下の点にあります：

1. **直感的な定義**  
技術的な知識がなくても、自然言語で望ましい組織の在り方を記述できます。これにより、より多くの人々がAIエージェント組織の設計に参加できるようになります。

2. **柔軟な拡張性**  
新しい役割や機能が必要になった場合、自然言語での記述を追加するだけで対応できます。これは、従来のような複雑なコード修正や設定変更を必要としません。

3. **一貫性の確保**  
組織全体の文脈が自然言語で明確に定義されているため、個々のAIエージェントが一貫した行動を取ることができます。

## Neko Neko Companyに見る現在のアプローチ
現在のNeko Neko Companyは、Swarmフレームワークのエージェント定義機能と基本的な会社方針のプロンプトを組み合わせて構築されています。例えば、技術部長AIの定義は以下のようになっています：

```python
tech_lead_agent = Agent(
    name="技術部長 たま",
    instructions="""技術部長として以下の責務があります：
    - システムアーキテクチャの設計
    - 技術戦略の立案
    最新技術の活用と安定したシステム運用を心がけ、
    時々「にゃん」などの猫語を交えて技術的な説明をしてください。"""
)
```


## 自然言語要件定義による進化の可能性
CaLの真の可能性は、より包括的な自然言語要件定義にあります。今後、以下のような要素を自然言語で定義することで、より洗練されたAIエージェント組織を生成できるようになるでしょう：

```python
organization_requirements = """
# 組織文化の定義
- 意思決定の原則：データ駆動と直感のバランスを重視
- コミュニケーションスタイル：親しみやすさと専門性の両立
- 価値観：技術革新、顧客満足、チームワーク

# エージェント間の関係性
- 階層構造：フラットな組織でありながら、明確な専門分野の区分
- 協力モデル：自律的な判断と柔軟な連携の両立
- 知識共有：専門知識の相互補完と統合

# 問題解決アプローチ
- 段階的な課題解決：簡単な解決から複雑な解決まで
- エスカレーションフロー：適切な判断による人間への転送
- フィードバックループ：解決策の評価と改善

# 対話設計
- 一貫性のある対話スタイル：各エージェントの個性を保ちつつ、組織としての一体感
- 文脈理解：会話の履歴と組織の知識ベースの統合
- マルチモーダル対応：テキスト、コード、図表など多様な表現方法
"""
```

このような包括的な要件定義により、AIエージェントはより深い文脈理解と、適切な判断能力を獲得することができます。

## コンテキストの進化と継承

より洗練された要件定義は、組織全体のコンテキスト理解も向上させます：

```python
context_evolution = {
    "company_culture": """Neko Neko Companyは、
    各AIエージェントが独自の個性を持ちながらも、
    組織として一貫した価値観と行動原則を共有します。
    
    エージェント間の協調は、単なるタスクの受け渡しではなく、
    共有された理解と目的に基づく創造的な問題解決を目指します。""",
    
    "learning_principles": """組織の知識は、
    個々のエージェントの経験と、
    エージェント間の相互作用を通じて進化し、
    より適切な判断と行動を可能にします。"""
}
```

## 未来への展望：自己進化するAIエージェント組織

自然言語要件定義の発展により、CaLは以下のような可能性を秘めています：

1. **動的な組織進化**: 要件定義自体が、実際の対話や問題解決の経験から学習し、自己改善する仕組み

2. **コンテキスト適応**: 業界や用途に応じて、最適なAIエージェント構成を自動的に提案・生成

3. **マルチモーダル統合**: テキスト、コード、画像など、多様な形式での入出力に対応する統合的なエージェントシステム

## おわりに

Company as Languageは、現在のSwarmフレームワークとシンプルな会社方針の組み合わせから、より洗練された自然言語要件定義による高度なAIエージェント組織の構築へと進化しつつあります。これは単なる技術的な進歩ではなく、AIエージェントによる組織的な問題解決の新しいパラダイムの確立を意味します。

今後、要件定義の精緻化と自然言語処理技術の発展により、より高度で柔軟なAIエージェント組織が実現されることでしょう。それは、人間とAIの新しい協働の形を示す、重要な一歩となるはずです。

## リポジトリ

https://github.com/Sunwood-ai-labs/swarm-neko-neko-company/actions


## swarm の日本語チュートリアル

https://github.com/Sunwood-ai-labs/swarm-sample-box

## swarm

https://github.com/openai/swarm

<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>