COSCUP 2025 参加レポート

2025/8/9 ~ 10 にかけて、台湾の台北で開催されたCOSCUP 2025に参加しましたので報告いたします。

会場となった国立台湾科技大学

はじめに

COSCUPはConference for Open Source Coders, Users, and Promotersの略で、ヨーロッパ最大のオープンソースイベントであるFOSDEMを参考に2006年から開催されている、オープンソースコミュニティが主催するカンファレンスです。

会場となったのは国立台湾科技大学で、常時20以上のトラックが並行して開催される大規模なイベントでした。講演のほかにも、BoF(Birds of a Feather, コミュニティや参加者が主催する非公式のミートアップ)や、Hacking Corner(開発者向けの交流用オープンスペース)、各OSSコミュニティのブースなどが設けられていました。

参加者人数は延べ3000人を超えており、参加していて非常に活気のあるイベントだと感じました。また、日本のOSS関連のイベントと比べると、参加者の年齢が若いと感じます。

オープニングセッション

本レポートでは、筆者が参加したセッションの中から特に印象に残ったものをいくつか紹介します。

[Prime Session] Programming Language for AI age

Rubyの開発者、まつもとゆきひろ氏による講演です。Ruby固有の話ではなく、生成AIと付き合ってプログラミングすることについて語られました。

AIを使用するのはペアプログラミングするようなもので、人間と違い、気を遣う必要がないのがメリットです。しかし、AIを使用してプログラミングするには不完全な自然言語を使う必要があります。そうすると、逆アルファ症候群(ある技術が登場すると、その技術が登場する前よりも忙しくなるにもかかわらず、それをありがたがって使用してしまう)を引き起こしてしまいます。今のところ、AIエージェントはドキュメントの生成やリファクタリングには優れている一方、大規模なプロダクトベースのプログラミングには向いていません。(使うとしても、例えばメモリ管理の部分などではAIよりもその分野に詳しくないといけないです。)

人間の言語はプログラミングに向いていないので、AIとやり取りする専用の言語が必要です。それは、簡潔で、理解しやすく、堅牢な表現力と拡張可能な語彙を持つような言語です。そして、そのような特徴を持った言語はすでに存在しています。――それはRubyである、と締めくくられました。

2025年現在のAIの能力に対する感想については、筆者が生成AIを使用した感じと似通っていました。一方で、AIとプログラミングする専用の言語が必要、という認識については思い浮かばなかった発想で、感銘を受けました。

From MongoDB to PostgreSQL


この講演では、ドキュメントデータベースのオープンソース標準を策定するプロジェクトおよびMongoDB互換のオープンソースデータベースFerretDBが紹介されました。MongoDBのライセンス変更に伴い、ドキュメントデータベースにもリレーショナルデータベースのような標準を策定必要がある、という問題意識によりプロジェクトが発足しました。

単にJSONを格納できる、という観点ではPostgreSQLも使用できますが、ドキュメントデータベースの世界ではフレームワークや開発者がMongoDBに依存しており、PostgreSQLをそのまま使用することは困難です。FerretDBは、バックエンドでPostgreSQLを動作させつつも、クライアント側ではMQLというMongoDBの問い合わせ言語を受け取ります。MQLとPostgreSQLの仲立ちをするのがFerretDBです。

また、バックエンドで動作させるデータベースはPostgreSQL互換であればよいので、例えばより高い可用性を求めるのであればバックエンドのデータベースとしてYugabyteDBを動作させることもできるようです。

Japanese Food Knowledge Graph for Taiwanese


日本でOSCを開催している、OSPN(Open Source People Network)による講演です。
日本食を例にあげて、ナレッジグラフの紹介がなされました。ナレッジグラフとは、知識を表現するグラフです。各概念を表すノードがあり、それぞれのノードはプロパティを持っています。ノード間の関係性はエッジ(線)によって示されます。例えば、カツカレーは以下のように表現されます。

Curry - CONTAINS -> Onion
Curry - CONTAINS -> Meat
Curry - IS_SERVED_WITH -> Rice
Katsu Curry - IS_COMPOSED_OF -> Curry
Katsu Curry - IS_COMPOSED_OF -> Tonkatsu

このナレッジグラフは、後述するRAG(検索拡張生成)の情報源としても使用することができます。

講演は英語で行われていましたが、日本語のできる台湾の参加者が、他の参加者の質問を日本語に通訳しやり取りするなど、和気あいあいとした雰囲気での交流がされていました。

Hot Topics in Global PGConf


この講演では、世界各地で開催されているPostgreSQLカンファレンス(PGConf)で話題のトピックについて紹介されました。PGConfで近年話題になっているものを紹介することで、最新技術トレンドや地域ごとの特色、あるいは地域に関係なく役立つ知見を共有することを目的とした講演でした。

技術トピックとしては、AI×pgvectorによるベクトル検索、pg_hint_planやVACUUMを中心としたパフォーマンス最適化、論理レプリケーションやActive-Active構成による高可用性、EDB Postgresのセキュリティ強化、RDSやAuroraなどクラウド移行の事例が紹介されました。PostgreSQL 18の新機能にも触れられていました。

台湾のPostgreSQLコミュニティに技術トレンドを紹介する目的の講演でしたが、紹介された技術トピックは日本のPostgreSQL Conferenceでもよく選ばれているトピックであり、親近感を覚えました。

Community-Driven Edge AI or Building Offline AI Agents with Open Models


この講演では、オープンモデルを活用したオフラインAIエージェントについて紹介されていました。従来のAIはネットワーク接続が前提でしたが、モバイル端末上で動作する「AI Driven Device」への進化が進んでおり、オフラインでも動作可能なAIエージェントのニーズが高まっています。

まず、生成AIが備えておくべき機能として、マルチモーダル(複数の種類の情報、例えばテキストデータのほかに画像や音声、動画を入力として受け取れる)、Function Calling(AIが外部の関数やAPIを呼び出す機能、例えばユーザから写真を受け取って位置を推測し、Google Mapを呼び出す)といった概念が紹介されました。

次に、Googleが開発したオープンモデルであるGemma 3、Gemma 3 Nanoについて紹介されました。
どちらのモデルもマルチモーダル、Function Callingといった機能を兼ね備えています。特にGemma 3 Nanoはサイズが小さく、モバイル端末にも組み込み可能なうえ、完全オフラインで動作する点が特徴的です。

生成AI分野が主題の講演も1つは参加してみようと思い聴講した講演でしたが、図や写真が多くスライドに掲載されており、事前知識が薄くともわかりやすい講演でした。

打開 AI 模型的任意門:用 PostgreSQL 撐起AI


こちらの講演では、PostgreSQLを生成AIの長期的な文脈保持に活用するための方法が紹介されました。
生成AIの既存のモデルを使用して独自チャットボットを作成する際、RAGという手法が使われます。これは、生成AIに参考にさせたい情報をあらかじめデータベースに保存しておき、問い合わせが来たら「関連がありそうな」情報をデータベースから探し出してAIに渡すことで、より求めている回答に近づける手法です。

RAGが登場した際はテキストデータを単にベクトル化し、ベクトルデータベースに保存することが考案されていましたが、このベクトルデータベースには欠点があります。それは、「関連がありそうな」情報をベクトル間の距離により算出するため、チャットの参考にさせるには望ましくないテキストが算出されてしまうという問題です。
本講演ではナレッジグラフを作成しておき活用する方法について紹介されました(Graph RAGといいます)。
ナレッジグラフは知識が構造化されていますので、場合によってはベクトルデータベースを使用するよりも望ましいテキストを抽出することができ、生成AIの精度向上に役立ちます。

筆者が参加したPostgreSQL関連の講演では一番参加者が多く、生成AIへの関心の高さが肌で感じられました。

監控與告警設計:打造適合團隊使用的 PostgreSQL 觀測儀表板


この講演では、金融業の大規模なデータベース環境におけるPostgreSQLの監視・可視化の取り組みが紹介されました。クレジットカード業務を例に、822万枚以上の流通カードを扱う高負荷なシステムにおいて、DB管理者がどのようにサービス性能を向上させているかが語られました。

DBAとデータ分析チームの視点の違いを踏まえた監視設計をしていました。DBAはCPU、メモリ、IO、WALサイズなどのリソース管理を重視し、分析チームはクエリの待機状態やブロックされたプロセスなど、ユーザーの行動に着目するためです。講演では、PrometheusとGrafanaを用いて、両者のニーズを満たす観測ダッシュボードを構築する方法が実例とともに紹介されました。

紹介された監視項目はpg_stat_activityやpg_locks、VACUUの進捗状況などで、一般的にPostgreSQLの状態を把握するのにつかわれるビューやテーブルが網羅的に紹介されていました。また、観測ダッシュボードは視覚的にわかりやすくて良いと感じました。

20 週年論壇:總召視角下的開源精神


COSCUP 開催 20周年を記念した対談です。COSCUP 歴代の代表者が参加し、オープンソースの精神についてをメインに対談が行われました。
対談中に、特に印象に残った点をいくつかあげます。

まず、ソフトウェアをオープンソースとすることのメリットは、コミュニティによる議論によってソフトウェアを改善していくことができる点です。多くの人がそのソフトウェアについて議論をすることで、単独で開発していた時には起こらなかった発想が生まれ、より洗練されたものにできます。

次に印象に残ったのは、「オープンソースに貢献することは、コミュニティに善意を共有している」という考え方です。
オープンソースコミュニティにおいては、善意で誰かに助けてもらうことがあります。ソフトウェアのエラーについて質問すると、誰かにこたえてもらった、というようなことです。この助けてくれた人は、何らかの利益を求めて貢献しているのではなく、質問者が今後コミュニティに何らかの貢献をすることを期待しているのです。

そして、オープンソースの精神を維持するには、オープンソースの考え方を発信し続けていく必要がある、という考え方にも感銘を受けました。時代は変化し続けており、オープンソースの精神を脅かすような技術が台頭してきています。例えば、ブロックチェーンはデフォルトでオープンである一方、ブロックチェーンのユーザがオープンソースの考えに関心があるかは微妙です。また、生成AIやクラウドコンピューティングは構成が複雑なため、オープンであることを要求することは難しいです。このような時代の変化の中で、COSCUPを通じてオープンソースの精神を広めていく必要がある、と述べられていました。

筆者は入社して以来PostgreSQLに関連する業務を行ってきましたが、本対談に参加することによりコミュニティへ貢献することの重要性を再認識しました。

終わりに

COSCUP 2025 へ参加し、聴講してきた講演から印象に残ったものを紹介しました。COSCUPにおいても、AIに関する関心は非常に高く感じられました。講演のタイトルにもAIという単語が含まれているものが多く、またAI関連の講演は他のものと比べ参加者が多い傾向にありました。一方で、AIが目まぐるしく進歩し、変化していく時代の中で、オープンソースコミュニティをどのように維持していくか、が重要だと感じました。今後、筆者も業務で主に使用しているPostgreSQLコミュニティについて、何らかの貢献ができればと思います。