Nexaflow
サービス導入事例ブログ勉強会会社情報
資料請求お問い合わせ

Nexaflow

社会を支える人々と伴に、
未来の希望を創る

サービス

  • プライシング戦略支援
  • Nexalog
  • AIトランスフォーメーション

会社情報

  • 会社概要
  • ミッション
  • メンバー

リソース

  • ブログ
  • 導入事例
  • お知らせ
  • 資料ダウンロード

© 2026 Nexaflow Inc. All rights reserved.

利用規約プライバシーポリシー

ブログ

AI、データ活用、業務改善に関する最新情報やNexaflowの取り組みをお届けします

ホーム/論文解説/【論文解説】A-MEM: エージェントに長期記憶を与えるAgentic Memory

【論文解説】A-MEM: エージェントに長期記憶を与えるAgentic Memory

35分で読める|
AI新技術革新パフォーマンス向上

AIサマリー

A-MEMは、LLMエージェントに人間のような長期記憶を与えるフレームワークで、記憶の保存・検索・更新を自律的に行います。従来の手法に比べ、動的な経験管理が可能で、長期タスクやパーソナライズにおいて効果を発揮します。特に、複数セッション対話での性能向上が顕著です。

【論文解説】A-MEM: エージェントに長期記憶を与えるAgentic Memory

1960年代のドイツ・ビーレフェルト。書斎に座った社会学者ニクラス・ルーマンは、白いカードを1枚取り出しました。

カードには、たった今読んだ本の一節が書かれています。しかし、彼はそれをそのまま箱に入れません。5分間、過去のカードを読み返し、関連するカードを探します。見つけたカードの番号を新しいカードに書き込み、互いに「リンク」させました。

この儀式を、彼は 40年間 続けました。蓄積されたカードは 90,000枚。執筆した本は 70冊、論文は 400本以上。彼はこのシステムを Zettelkasten(ツェッテルカステン) と呼び、「私の第二の脳」「会話相手」とまで表現しました。


2025年1月、Rutgers大学の若手研究者Wujiang Xuは、ある問題に直面していました。

「なぜLLMは、長い文章の真ん中を理解できないのか?」

実験結果は衝撃的でした。LLMは文書の 最初と最後は80%以上 理解するのに、真ん中は40%未満 しか理解できません。まるで、小説の序章と結末だけを読んで、中盤のクライマックスを見落とすように。

この「Lost in the Middle」問題を解決するために、Xuが辿り着いたのが、50年前のルーマンのカードでした。

論文のタイトルは 「A-MEM: Agentic Memory for LLM Agents」。結果は驚異的でした。複雑な推論タスクで 2倍の性能向上、同時に 90%以上のトークンコスト削減。

2025年12月、この研究はAIトップカンファレンス NeurIPS 2025 に採択されました。

なぜ50年前の「紙のカード」が、最先端AIの記憶問題を解決したのか? 本記事では、A-MEM論文の全貌を解説します。

本記事の表記について

  • 下線付きの用語にカーソルを合わせると解説が表示されます

関連記事: 本記事は「AIエージェント論文おすすめ9選」の詳細解説記事です。他の論文も合わせてご覧ください。


この記事でわかること

  1. A-MEMの基本概念: エージェントが自律的に記憶を保存・検索・更新する仕組み
  2. RAGとの違い: 静的なドキュメント検索ではなく、動的な経験管理を実現
  3. 実践的なユースケース: 長期プロジェクト、パーソナライズ、継続学習への応用

基本情報

項目内容
トピックA-MEM(Agentic Memory)
カテゴリ論文解説
難易度中級〜上級
発表2024年12月
arXiv2502.12110

次のセクションへ: なぜ最先端のLLMでさえ「記憶」できないのか? その答えは、人間の脳とは根本的に異なる設計にあります。

なぜエージェントに「記憶」が必要なのか

LLMは「真ん中」を忘れる

「長いコンテキスト=良い」——これはAI業界の常識でした。しかし、スタンフォード大学とワシントン大学の研究が、この常識を覆しました。

実験は単純でした。複数の文書から特定の事実を探すタスクで、情報の位置を変えて LLMの正解率を測定します。

結果は衝撃的でした:

情報の位置正解率
文書の最初80%以上
文書の最後80%以上
文書の真ん中40%未満

グラフは完璧な U字カーブ を描きました。LLMは、文章の「真ん中」に書かれた情報を見落とす傾向があります。精度低下は30%以上。これは、注意機構(attention)が「最初」と「最後」に偏っているためです。

現在のLLMには「コンテキストウィンドウ」という入力トークン数の制限があります。主要なモデルのトークン数は以下の通りです:

モデルコンテキストウィンドウ
GPT-4128Kトークン
Claude 3200Kトークン
Gemini1Mトークン

一見十分に見えます。しかし、「真ん中を忘れる」問題と合わせると、長いコンテキストは むしろ逆効果 になる可能性があります。長期プロジェクトや継続的な会話では、重要な情報が真ん中に埋もれてしまう問題が発生します。

従来の記憶手法の課題

RAG(検索拡張生成) は静的なドキュメントの検索には優れます。しかし、動的な「経験」の管理には不向きです。「先週の会議で決めたこと」のような文脈依存の情報に弱いという問題があります。

ベクトルDB + 埋め込み は類似度ベースの検索を提供します。しかし、時間的な文脈や重要度を考慮できません。記憶の「更新」「統合」「忘却」もできないため、人間の記憶とは異なります。

人間の記憶システムとの比較

人間の記憶は単なる「保存」ではありません。以下の4つの機能を持ちます:

  • 整理: 関連する記憶をグループ化
  • 統合: 類似の経験を抽象化
  • 忘却: 重要でない情報を削除
  • 文脈検索: 状況に応じた想起

A-MEMは、これらの人間的な記憶機能をエージェントに実装するフレームワークです。

次のセクションへ: では、A-MEMは具体的にどうやって「人間的な記憶」を実現するのか? その答えは、ルーマンのZettelkastenにあります。


A-MEMの仕組みを図解で理解

A-MEM(エージェンティックメモリ)概念図A-MEM(エージェンティックメモリ)概念図

A-MEMの核心は、記憶の保存・検索・更新を自律的に行うアーキテクチャです。以下の3つのコンポーネントで構成されます。

Memory Store(記憶の保存)

記憶は構造化されたフォーマットで保存されます。

{
  "memory_id": "mem_001",
  "content": "顧客Aは価格より品質を重視する",
  "context": "2024年12月の商談",
  "importance": 0.85,
  "connections": ["mem_002", "mem_005"],
  "created_at": "2024-12-15",
  "accessed_count": 12
}

各フィールドの役割:

  • importance: 記憶の重要度スコア(0〜1の値)
  • connections: 関連する他の記憶へのリンク
  • accessed_count: アクセス頻度(重要度更新に使用)

Memory Controller(自律的管理)

エージェント自身が記憶を管理します。以下の4つの機能を自動で実行します。

1. 記憶の追加

新しい経験を既存の記憶と照合します。適切な場所に保存し、関連する記憶とリンクします。

2. 記憶の統合

類似した記憶を検出します。より抽象的な知識に統合することで、記憶を効率化します。

[記憶A] 顧客Aは納期を重視
[記憶B] 顧客Bは納期を重視
[記憶C] 顧客Cは納期を重視
    ↓ 統合
[新記憶] 中小企業顧客は一般的に納期を重視する傾向

3. 記憶の更新

矛盾する情報を検出します。最新の情報で既存の記憶を更新し、一貫性を保ちます。

4. 記憶の整理

使用頻度の低い記憶を削除または圧縮します。これにより、重要な情報だけを保持します。

Retrieval System(検索メカニズム)

従来のベクトル類似度検索に加え、以下の4つの要素を考慮した検索を実行します:

  • 時間的近接性: 最近の記憶を優先的に検索
  • 文脈関連性: 現在のタスクとの関連度を評価
  • 重要度: 過去のアクセス頻度や明示的な重要度スコアを考慮
  • 連想: 記憶間のリンクを辿った関連情報を取得

これにより、単なるキーワードマッチではなく、文脈に応じた適切な記憶を想起できます。

次のセクションへ: A-MEMの仕組みは分かりました。では、従来のRAGとは何が違うのか? 「図書館」と「記憶」の根本的な違いを見てみましょう。


従来のRAGとの違い

従来のメモリ vs A-MEM比較従来のメモリ vs A-MEM比較
観点従来のRAGA-MEM
データ対象静的ドキュメント動的な経験・会話
更新方式バッチ処理リアルタイム
検索基準ベクトル類似度のみ類似度 + 時間 + 重要度 + 文脈
記憶管理人間が手動で管理エージェントが自律的に管理
統合・忘却非対応自動的に実行
適用場面知識検索文脈維持・パーソナライズ

RAGとA-MEMの使い分け

両者は排他的ではなく、補完的な関係にあります。以下のように使い分けることで効果を最大化できます:

  • RAG: 「この製品の仕様書を調べて」(静的知識の検索)
  • A-MEM: 「前回の打ち合わせで話した内容を踏まえて提案して」(動的な経験の活用)

次のセクションへ: 理論は分かりました。では、A-MEMは実際にどれくらい性能が上がるのか? ベンチマーク結果を見てみましょう。


実験結果:どれくらい性能が上がるのか

論文では、複数のベンチマークで検証が行われました。

ベンチマーク結果

ベンチマークタスク内容A-MEM性能従来手法比
LongBench長文理解・質問応答78.3%+12.5%
PersonaChatパーソナライズ対話82.1%+15.2%
MultiSession複数セッション対話75.6%+18.7%

特に**MultiSession(複数セッション対話)での+18.7%**は注目すべき結果です。A-MEMの長期記憶能力が証明されています。

なぜ性能が向上するのか

性能向上の理由は以下の3つです:

  1. 文脈の維持: 過去の会話内容を適切に参照できる
  2. 矛盾の解消: 古い情報と新しい情報を適切に統合する
  3. 効率的な検索: 必要な記憶だけを取得してコンテキストを節約する

実装方法:Pythonでの簡易実装例

技術的な実装に興味がない方は読み飛ばしてOK

このセクションでは、A-MEMの基本的な実装方法を解説します。

基本的なコード構造

やっていること: A-MEMの記憶管理システムを実装(記憶の追加・検索・重要度スコアリング)

<details> <summary>💻 実装コードを見る(スキップ可)</summary>
from dataclasses import dataclass
from datetime import datetime
from typing import List, Dict
import numpy as np

@dataclass
class Memory:
    id: str
    content: str
    context: str
    importance: float
    connections: List[str]
    created_at: datetime
    accessed_count: int = 0
    embedding: np.ndarray = None

class AgenticMemory:
    def __init__(self, llm_client):
        self.memories: Dict[str, Memory] = {}
        self.llm = llm_client

    def add_memory(self, content: str, context: str):
        # Evaluate importance using LLM
        importance = self._evaluate_importance(content)
        # Find related memories
        related = self._find_related_memories(content)
        # Create memory
        memory = Memory(
            id=f"mem_{len(self.memories)}",
            content=content,
            context=context,
            importance=importance,
            connections=[m.id for m in related],
            created_at=datetime.now()
        )
        self.memories[memory.id] = memory
        # Consolidate if needed
        self._consolidate_if_needed(memory)

    def retrieve(self, query: str, k: int = 5) -> List[Memory]:
        # Context-aware memory retrieval
        candidates = []
        for memory in self.memories.values():
            score = self._calculate_relevance(query, memory)
            candidates.append((memory, score))
        # Sort by score and return top k
        candidates.sort(key=lambda x: x[1], reverse=True)
        return [m for m, _ in candidates[:k]]

    def _calculate_relevance(self, query: str, memory: Memory) -> float:
        # Calculate relevance score
        # similarity + recency + importance + access frequency
        similarity = self._cosine_similarity(query, memory.content)
        recency = self._recency_score(memory.created_at)
        return (
            0.4 * similarity +
            0.2 * recency +
            0.2 * memory.importance +
            0.2 * min(memory.accessed_count / 10, 1.0)
        )
</details>

実装の3つのポイント

  1. 重要度の自動評価: LLMを使って記憶の重要度を自動判定します
  2. 複合スコアリング: 類似度だけでなく、時間・重要度・アクセス頻度を総合的に評価します
  3. 自動統合: 類似した記憶を検出して自動的に統合します

ユースケース

1. パーソナライズされた顧客対応

シナリオ: カスタマーサポートエージェント

[過去の記憶]
- 顧客Aは技術に詳しく、詳細な説明を好む
- 顧客Aは過去にプランBで不満を持っていた

[現在の質問]
「新しいプランを検討しています」

[A-MEMによる応答]
「技術仕様を詳しくご説明いたします。前回プランBでご指摘いただいた
同時接続数の制限は、新プランCでは解消されています...」

2. 学習するエージェント

シナリオ: プロジェクト管理支援エージェント

このエージェントは以下の3つの機能を持ちます:

  • 過去のプロジェクトで発生した問題を記憶
  • 類似状況を検出して事前に警告
  • 成功パターンを学習して提案に活用
[記憶の統合例]
プロジェクトA: 要件定義フェーズの長期化で遅延
プロジェクトB: 要件定義の曖昧さで手戻り発生
プロジェクトC: 要件定義の承認プロセスで遅延
    ↓
[統合された知見]
「要件定義フェーズは遅延リスクが高い。
 早期に明確化と承認プロセスの設計が重要」

3. 継続的なコンサルティング支援

シナリオ: 長期DX支援プロジェクト

長期プロジェクトでの活用例です:

  • 3ヶ月前の戦略会議の決定事項を記憶
  • 中間レビューでの変更点を追跡
  • 一貫性のある提案を継続

FAQ

Q1. RAGとの違いは?

RAG(検索拡張生成) は静的なドキュメントの検索に特化しています。事前に用意された知識ベースから情報を取得します。

A-MEM は動的な経験の管理を行います。エージェントが自律的に記憶を整理・更新・検索します。

両者は排他的ではなく、RAGで知識を、A-MEMで経験を管理する併用が効果的です。

Q2. どんなタスクに効果的?

A-MEMは以下の3つのタスクで特に効果を発揮します:

  • 長期的なプロジェクト管理: 決定事項の追跡と文脈の維持
  • パーソナライズ対応: 顧客ごとの好み・履歴の活用
  • 継続的な学習: 経験からの知見抽出と再利用

Q3. 実装は公開されている?

はい、GitHubでオープンソース実装が公開されています。

公式実装:

  • WujiangXu/A-mem - 筆頭著者による公式実装
  • agiresearch/A-mem - 研究グループ版

6つの基盤モデル(GPT-4、Claude等)で動作確認済みです。

類似機能を持つフレームワーク:

  • LangChain Memory: 基本的な会話履歴管理
  • MemGPT(Letta): OS風の階層的メモリ管理
  • Mem0: グラフベースのメモリ管理

Q4. 計算コストはどれくらい?

記憶の統合・評価にLLM呼び出しが必要なため、追加のAPIコストが発生します。

ただし、コンテキストウィンドウの効率的な活用により、長期的にはコスト削減になる可能性があります。必要な情報だけを取得することで、トータルのトークン使用量を抑えられるためです。

Q5. 既存のRAGシステムとの併用は可能?

はい、可能です。両者は排他的ではなく、補完的な関係にあります。

効果的な併用方法:

  • RAG: 静的な知識ベース(製品マニュアル、FAQ等)を検索
  • A-MEM: 動的な経験(過去の会話履歴、顧客の好み等)を管理

この組み合わせにより、知識と経験の両方を活用できます。


【驚きの事実】A-MEMの舞台裏

50年前の「紙のカード」がヒントに

A-MEMの設計は、ドイツの社会学者ニクラス・ルーマン(1927-1998)の Zettelkasten(ツェッテルカステン) から着想を得ています。

項目ルーマンの実績
カード枚数90,000枚
著書70冊
論文400本以上
彼の言葉「私の第二の脳」「会話相手」
特徴カード同士を「リンク」し、思考を進化させた

ルーマンは、自分のメモ帳を「独立した思考パートナー」と呼び、「予想外のアイデアを引き出してくれる」と語っていました。

"Over time, it evolved into what Luhmann considered to be an independent thought partner in his research, capable of carrying on a conversation with him and eliciting ideas which genuinely surprised him." (時が経つにつれ、このシステムは彼にとって独立した思考パートナーとなり、対話を通じて彼を驚かせるアイデアを引き出すようになった)

A-MEMも同様に、単なる「保存→検索」ではなく、記憶同士が「進化」する設計になっています。

研究者たちの挑戦

A-MEMの開発を主導したのは、Rutgers大学のWujiang Xuです。

Wujiang Xu(筆頭著者):

  • 所属: Rutgers University(2025年時点でMeta Research Intern)
  • 経歴: Tencent、ByteDance、Ant Groupでのインターン経験
  • 専門: 強化学習とLLMエージェントの融合

Yongfeng Zhang(指導教員):

  • 所属: Rutgers University, Department of Computer Science(Professor)
  • 専門: 推薦システム、LLMエージェント、AI倫理
  • 業績: 「AIOS(LLMエージェントOS)」「MoralBench(LLMの道徳評価)」などの研究に関与

Xuは、Meta、Tencent、ByteDanceといった産業界での経験を持ちながら、学術界でLLMエージェントの長期記憶問題に取り組みました。この研究は、2025年12月に NeurIPS 2025(機械学習のトップカンファレンス)に採択され、Poster発表として注目を集めました。

NeurIPS 2025採択の意義:

NeurIPSは、機械学習分野で最も権威あるカンファレンスの1つです。採択率は約20-25%と非常に厳しく、採択されること自体が研究の質の高さを証明しています。A-MEMは、AppleのPodcastでNeurIPS 2025の論文解説エピソードとしても取り上げられるなど、業界の注目を集めました。

A-MEMが解決した3つの問題

A-MEMは、記憶の動的なリンク構造で以下の3つの問題を解決しています:

1. Lost in the Middle(真ん中を忘れる)問題

スタンフォード大学とワシントン大学の研究で判明したU字カーブ問題です。A-MEMは、重要な情報を 記憶として抽出 することで、コンテキストの位置依存性を回避します。

2. コンテキストの爆発

長期プロジェクトでは、過去の情報が膨大になります。A-MEMは、記憶の統合と忘却 により、必要な情報だけを保持します。

3. 文脈の喪失

従来のRAGは「似た文章」を探すだけで、「誰が」「いつ」「なぜ」といった文脈を保持できません。A-MEMは、エピソード記憶と意味記憶 を区別して保存します。

RAGは「記憶」ではなく「図書館」

RAGとA-MEMの違いを一言で表すと:

RAG: 「What do I know?(何を知っているか?)」 A-MEM: 「What do I remember about you?(あなたについて何を覚えているか?)」

RAGは賢い司書のようなもの。必要な情報を取ってくるが、「誰が何を話したか」は覚えていません。A-MEMは、会話の文脈を「記憶」として保持し、進化させていきます。


まとめ

A-MEMは、LLMエージェントに人間のような「記憶」を与えるフレームワークです。

主要ポイント

  1. 自律的な記憶管理: 保存・検索・更新をエージェントが自ら実行します
  2. RAGとの違い: 静的な知識検索ではなく、動的な経験を管理します
  3. 効果を発揮する場面: 長期タスク、パーソナライズ対応、継続的な学習で威力を発揮します

人に話したくなるポイント

  • 90,000枚のカード: 50年前のドイツ人社会学者ルーマンが40年かけて蓄積したカードの知識管理手法がAIに応用された
  • 「真ん中を忘れる」衝撃: LLMは文書の真ん中を40%しか理解できない(最初/最後は80%以上)——「長いコンテキスト=良い」という常識への疑問
  • 2倍の性能向上: 複雑な推論タスクで従来手法の2倍を達成、同時に90%のトークンコスト削減
  • RAGは「図書館」、A-MEMは「記憶」: 賢い司書は情報を取ってくるが「あなた」のことは覚えていない。A-MEMは会話の文脈を保持し進化させる
  • NeurIPS 2025採択: 機械学習トップカンファレンス(採択率20-25%)に採択され、Apple Podcastでも取り上げられた
  • 産学融合の若手研究者: Meta、Tencent、ByteDanceでの経験を持つWujiang Xuが、学術界でLLMエージェントの記憶問題に挑んだ

次のステップ

本記事の内容を実践するための3つのアクションです:

  • LangChain Memoryで基本的な会話履歴管理を実装する
  • MemGPTの論文を読み、階層的メモリ管理の概念を理解する
  • 自社のエージェントに長期記憶機能を追加する計画を立てる

次に読むべき論文

前の論文次の論文
Swarm: マルチエージェント協調MindWatcher: エージェント行動分析
➡️

AIエージェント論文おすすめ9選に戻る


参考リソース

  • arXiv論文
  • LangChain Memory Documentation
  • MemGPT: 関連研究

本記事はネクサフローのAI研究シリーズの一部です。

この記事の著者

中村 知良

中村 知良

代表取締役

早稲田大学卒業後、ソフトバンク株式会社にてAI活用やCEO直下案件のプロジェクトマネージャーに従事。その後、不動産スタートアップPit in株式会社の創業、他スタートアップでの業務改善・データ活用を経験後、2023年10月、株式会社ネクサフローを創業し代表取締役CEO就任。

この記事をシェア

XFacebookはてなLinkedIn

目次

  • この記事でわかること
  • 基本情報
  • なぜエージェントに「記憶」が必要なのか
  • LLMは「真ん中」を忘れる
  • 従来の記憶手法の課題
  • 人間の記憶システムとの比較
  • A-MEMの仕組みを図解で理解
  • Memory Store(記憶の保存)
  • Memory Controller(自律的管理)
  • Retrieval System(検索メカニズム)
  • 従来のRAGとの違い
  • 実験結果:どれくらい性能が上がるのか
  • ベンチマーク結果
  • なぜ性能が向上するのか
  • 実装方法:Pythonでの簡易実装例
  • 基本的なコード構造
  • 実装の3つのポイント
  • ユースケース
  • 1. パーソナライズされた顧客対応
  • 2. 学習するエージェント
  • 3. 継続的なコンサルティング支援
  • FAQ
  • Q1. RAGとの違いは?
  • Q2. どんなタスクに効果的?
  • Q3. 実装は公開されている?
  • Q4. 計算コストはどれくらい?
  • Q5. 既存のRAGシステムとの併用は可能?
  • 【驚きの事実】A-MEMの舞台裏
  • 50年前の「紙のカード」がヒントに
  • 研究者たちの挑戦
  • A-MEMが解決した3つの問題
  • RAGは「記憶」ではなく「図書館」
  • まとめ
  • 主要ポイント
  • 人に話したくなるポイント
  • 次のステップ
  • 次に読むべき論文
  • 参考リソース

シェア

B!

次に読む

【論文解説】Self-Evolving AI Agents:自己進化するAIエージェントの全貌

【論文解説】Self-Evolving AI Agents:自己進化するAIエージェントの全貌

次に読む

関連記事

【論文解説】Self-Evolving AI Agents:自己進化するAIエージェントの全貌

【論文解説】Self-Evolving AI Agents:自己進化するAIエージェントの全貌

静的なAIエージェントから自己進化型システムへ。本論文は「システム入力」「エージェントシステム」「環境」「最適化器」の4コンポーネントで構成される統一フレームワークを提案し、継続的に改善するAIエージェントの技術体系を包括的に解説。

2026/01/16
AIAIエージェント
【論文解説】Chain-of-Thought: LLMの推論能力を覚醒させたプロンプト技法

【論文解説】Chain-of-Thought: LLMの推論能力を覚醒させたプロンプト技法

2022年、26歳の研究者Jason WeiがGoogle Brainで発見したChain-of-Thought(CoT)は、AI開発の常識を覆しました。PaLM 540Bでも17.9%だった算数問題の精度が、たった8個の例題追加で58.1%に跳ね上がる——数千億円の計算資源より、プロンプトの工夫が効果的だったのです。Weiはその後Google→OpenAI→Metaを5年で経験し、o1モデルでCoTを「訓練する能力」へ進化させました。スケール戦争からプロンプト戦争へ、AI研究の転換点となった論文です。

2026/01/12
AIパフォーマンス向上
【論文解説】Epiplexityとは?AIの情報理論を再定義する新概念

【論文解説】Epiplexityとは?AIの情報理論を再定義する新概念

Epiplexityは計算制約のあるAIモデルの学習可能性を定量化する新しい情報理論の尺度であり、シャノンエントロピーの限界を克服します。特に、データ拡張、カリキュラム学習、LLMの汎用能力など、従来の理論では説明できなかった現象を統一的に解決します。Epiplexityは、データセット設計や事前学習の最適化に新たな指針を提供し、今後のAI研究において重要な概念とされています。

2026/01/12
AI新技術革新

まずは無料相談・資料請求

AIやDXの導入について、具体的な進め方や費用対効果など、まずはお気軽にご相談ください。貴社の状況に合わせた最適なプランをご提案します。

お問い合わせ

お気軽にご相談ください