[doc] add api document

This commit is contained in:
hs 2024-08-05 12:22:17 +08:00
parent 70de01b1bc
commit 2bcaf6bc25
34 changed files with 420 additions and 110 deletions

2
.gitignore vendored
View file

@ -147,4 +147,4 @@ cradle*
# sphinx docs
memory_scope*.rst
memoryscope*.rst

View file

@ -1,7 +1,7 @@
#!/bin/bash
rm -rf build/html/*
rm en/source/memory_scope*.rst
rm zh_CN/source/memory_scope*.rst
sphinx-apidoc -f -o en/source ../../memory_scope -t template -e
sphinx-apidoc -f -o zh_CN/source ../../memory_scope -t template -e
rm en/source/memoryscope*.rst
rm zh_CN/source/memoryscope*.rst
sphinx-apidoc -f -o en/source ../../memoryscope -t template -e
sphinx-apidoc -f -o zh_CN/source ../../memoryscope -t template -e
make clean all

View file

@ -0,0 +1,72 @@
.. _api:
=============
API Reference
=============
MemoryScope API Documentation
Enumeration
===========
.. automodule:: memoryscope.enumeration
:members:
Scheme
======
.. automodule:: memoryscope.scheme
:members:
Config
======
.. automodule:: memoryscope.core.config
:members:
Models
======
.. automodule:: memoryscope.core.models
:members:
Storage
=======
.. automodule:: memoryscope.core.storage
:members:
Worker
======
Base
----
.. automodule:: memoryscope.core.worker
:members:
Frontend
--------
.. automodule:: memoryscope.core.worker.frontend
:members:
Backend
--------
.. automodule:: memoryscope.core.worker.backend
:members:
Operation
=========
.. automodule:: memoryscope.core.operation
:members:
Service
=======
.. automodule:: memoryscope.core.service
:members:
Chat
====
.. automodule:: memoryscope.core.chat
:members:

View file

@ -14,7 +14,7 @@
import os
import sys
sys.path.insert(0, os.path.abspath("/home/hmp/memoryscope"))
sys.path.insert(0, os.path.abspath("../../../../../MemoryScope"))
# -- Project information -----------------------------------------------------
@ -39,8 +39,12 @@ extensions = [
"sphinxcontrib.mermaid",
"myst_parser",
"sphinx.ext.autosectionlabel",
'sphinxcontrib.autodoc_pydantic'
]
autodoc_pydantic_model_show_json = True
autodoc_pydantic_settings_show_json = True
# Prefix document path to section labels, otherwise autogenerated labels would
# look like 'heading' rather than 'path/to/file:heading'
autosectionlabel_prefix_document = True
@ -49,11 +53,20 @@ autosummary_ignore_module_all = False
autodoc_member_order = "bysource"
# If true, '()' will be appended to :func: etc. cross-reference text.
add_function_parentheses = False
# If true, the current module name will be prepended to all description
# unit titles (such as .. function::).
add_module_names = True
autodoc_default_flags = ["members"]
autodoc_default_options = {
"members": True,
"member-order": "bysource",
"special-members": "__init__",
}
# Add any paths that contain templates here, relative to this directory.
templates_path = ["_templates"]
@ -62,11 +75,6 @@ templates_path = ["_templates"]
# This pattern also affects html_static_path and html_extra_path.
exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"]
autodoc_default_options = {
"members": True,
"special-members": "__init__",
}
# -- Options for HTML output -------------------------------------------------
# The theme to use for HTML and HTML Help pages. See the documentation for
@ -80,7 +88,7 @@ html_theme = "sphinx_rtd_theme"
html_static_path = ["_static"]
html_theme_options = {
"navigation_depth": 2,
"navigation_depth": 10,
}
source_suffix = {

View file

@ -16,25 +16,15 @@ MemoryScope Documentation
:maxdepth: 1
:glob:
:hidden:
:caption: AgentScope Tutorial
:caption: MemoryScope Tutorial
tutorial/101-agentscope.md
tutorial/101-memoryscope.md
tutorial/102-installation.md
tutorial/103-example.md
tutorial/contribute.rst
.. toctree::
:maxdepth: 1
:glob:
:maxdepth: 6
:caption: MemoryScope API Reference
memory_scope
memory_scope.chat
memory_scope.constants
memory_scope.enumeration
memory_scope.memory
memory_scope.models
memory_scope.scheme
memory_scope.storage
memory_scope.utils
memoryscope

View file

@ -1,7 +1,7 @@
memory_scope
============
memoryscope
===========
.. toctree::
:maxdepth: 4
memory_scope
memoryscope

View file

@ -1,4 +1,4 @@
(101-agentscope-en)=
(101-memoryscope-en)=
# About AgentScope
@ -113,4 +113,4 @@ AgentScope
└── ... ..
```
[[Return to the top]](#101-agentscope)
[[Return to the top]](#101-memoryscope-en)

View file

@ -1,8 +0,0 @@
Get Involved
===============
.. toctree::
:maxdepth: 2
301-community.md
302-contribute.md

View file

@ -13,22 +13,3 @@ MemoryScope is an innovative multi-agent platform designed to empower developers
- [About MemoryScope](101-memoryscope.md)
- [Installation](102-installation.md)
- [Quick Start](103-example.md)
- [Model](203-model.md)
- [Prompt Engineering](206-prompt.md)
- [Agent](201-agent.md)
- [Memory](205-memory.md)
- [Response Parser](203-parser.md)
- [System Prompt Optimization](209-prompt_opt.md)
- [Tool](204-service.md)
- [Pipeline and MsgHub](202-pipeline.md)
- [Distribution](208-distribute.md)
- [MemoryScope Studio](209-gui.md)
- [Retrieval Augmented Generation (RAG)](210-rag.md)
- [Logging](105-logging.md)
- [Monitor](207-monitor.md)
- [Example: Werewolf Game](104-usecase.md)
### Getting Involved
- [Joining MemoryScope Community](301-community.md)
- [Contribute to MemoryScope](302-contribute.md)

View file

@ -8,4 +8,5 @@ sphinx
sphinx-autobuild
sphinx_rtd_theme
sphinxcontrib-mermaid
myst-parser
myst-parser
autodoc_pydantic

View file

@ -0,0 +1,68 @@
.. _api:
MemoryScope API 接口文档
Enumeration
===========
.. automodule:: memoryscope.enumeration
:members:
Scheme
======
.. automodule:: memoryscope.scheme
:members:
Config
======
.. automodule:: memoryscope.core.config
:members:
Models
======
.. automodule:: memoryscope.core.models
:members:
Storage
=======
.. automodule:: memoryscope.core.storage
:members:
Worker
======
Base
----
.. automodule:: memoryscope.core.worker
:members:
Frontend
--------
.. automodule:: memoryscope.core.worker.frontend
:members:
Backend
--------
.. automodule:: memoryscope.core.worker.backend
:members:
Operation
=========
.. automodule:: memoryscope.core.operation
:members:
Service
=======
.. automodule:: memoryscope.core.service
:members:
Chat
====
.. automodule:: memoryscope.core.chat
:members:

View file

@ -14,7 +14,7 @@
import os
import sys
sys.path.insert(0, os.path.abspath("/home/hmp/memoryscope"))
sys.path.insert(0, os.path.abspath("../../../../../MemoryScope"))
# -- Project information -----------------------------------------------------
@ -39,8 +39,12 @@ extensions = [
"sphinxcontrib.mermaid",
"myst_parser",
"sphinx.ext.autosectionlabel",
'sphinxcontrib.autodoc_pydantic'
]
autodoc_pydantic_model_show_json = True
autodoc_pydantic_settings_show_json = True
# Prefix document path to section labels, otherwise autogenerated labels would
# look like 'heading' rather than 'path/to/file:heading'
autosectionlabel_prefix_document = True
@ -49,11 +53,20 @@ autosummary_ignore_module_all = False
autodoc_member_order = "bysource"
# If true, '()' will be appended to :func: etc. cross-reference text.
add_function_parentheses = False
# If true, the current module name will be prepended to all description
# unit titles (such as .. function::).
add_module_names = True
autodoc_default_flags = ["members"]
autodoc_default_options = {
"members": True,
"member-order": "bysource",
"special-members": "__init__",
}
# Add any paths that contain templates here, relative to this directory.
templates_path = ["_templates"]
@ -62,11 +75,6 @@ templates_path = ["_templates"]
# This pattern also affects html_static_path and html_extra_path.
exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"]
autodoc_default_options = {
"members": True,
"special-members": "__init__",
}
# -- Options for HTML output -------------------------------------------------
# The theme to use for HTML and HTML Help pages. See the documentation for

View file

@ -9,18 +9,21 @@ MemoryScope 文档
======================================
.. include:: tutorial/main.md
:parser: myst_parser.sphinx_
.. toctree::
:maxdepth: 1
:glob:
:hidden:
:caption: MemoryScope Tutorial
tutorial/101-memoryscope.md
tutorial/102-installation.md
tutorial/103-example.md
.. toctree::
:maxdepth: 4
:caption: MemoryScope API 文档
memory_scope
memory_scope.agent
memory_scope.chat
memory_scope.constants
memory_scope.enumeration
memory_scope.memory
memory_scope.models
memory_scope.scheme
memory_scope.storage
memory_scope.utils
api

View file

@ -1,7 +1,7 @@
memory_scope
============
memoryscope
===========
.. toctree::
:maxdepth: 4
memory_scope
memoryscope

View file

@ -0,0 +1,7 @@
(101-memoryscope-cn)=
# 关于memoryscope
TODO: 添加中文文档
[[Return to the top]](#101-memoryscope-cn)

View file

@ -0,0 +1,7 @@
(102-installation-cn)=
# 安装memoryscope
TODO: 添加中文文档
[[Return to the top]](#102-installation-cn)

View file

@ -0,0 +1,6 @@
(103-start-cn)=
# 如何使用
TODO: 添加中文
[[Return to the top]](#103-start-cn)

View file

@ -1,8 +0,0 @@
参与贡献
===============
.. toctree::
:maxdepth: 2
301-community.md
302-contribute.md

View file

@ -12,23 +12,4 @@ AgentScope是一款全新的Multi-Agent框架专为应用开发者打造
- [关于AgentScope](101-memoryscope.md)
- [安装](102-installation.md)
- [快速开始](103-example.md)
- [模型](203-model.md)
- [提示工程](206-prompt.md)
- [Agent](201-agent.md)
- [记忆](205-memory.md)
- [结果解析](203-parser.md)
- [系统提示优化](209-prompt_opt.md)
- [工具](204-service.md)
- [Pipeline和MsgHub](202-pipeline.md)
- [分布式](208-distribute.md)
- [MemoryScope Studio](209-gui.md)
- [检索增强生成RAG](210-rag.md)
- [日志](105-logging.md)
- [监控器](207-monitor.md)
- [样例:狼人杀游戏](104-usecase.md)
### 参与贡献
- [加入AgentScope社区](301-community.md)
- [贡献到AgentScope](302-contribute.md)
- [快速开始](103-example.md)

View file

@ -6,7 +6,7 @@ from memoryscope import MemoryScope, Arguments
arguments = Arguments(
language="cn",
human_name="用户",
human_name="User",
assistant_name="AI",
logger_to_screen=False,
memory_chat_class="api_memory_chat",

View file

@ -0,0 +1,8 @@
from . import common_constants
from . import language_constants
__all__ = [
"common_constants",
"language_constants"
]

View file

@ -0,0 +1,7 @@
from .memoryscope import MemoryScope
from .memoryscope_context import MemoryscopeContext
__all__ = [
"MemoryScope",
"MemoryscopeContext"
]

View file

@ -0,0 +1,9 @@
from .api_memory_chat import ApiMemoryChat
from .base_memory_chat import BaseMemoryChat
from .cli_memory_chat import CliMemoryChat
__all__ = [
"ApiMemoryChat",
"BaseMemoryChat",
"CliMemoryChat"
]

View file

@ -0,0 +1,7 @@
from .arguments import Arguments
from .config_manager import ConfigManager
__all__ = [
"Arguments",
"ConfigManager",
]

View file

@ -0,0 +1,13 @@
from .base_model import BaseModel
from .dummy_generation_model import DummyGenerationModel
from .llama_index_embedding_model import LlamaIndexEmbeddingModel
from .llama_index_generation_model import LlamaIndexGenerationModel
from .llama_index_rank_model import LlamaIndexRankModel
__all__ = [
"BaseModel",
"DummyGenerationModel",
"LlamaIndexEmbeddingModel",
"LlamaIndexGenerationModel",
"LlamaIndexRankModel"
]

View file

@ -0,0 +1,13 @@
from .backend_operation import BackendOperation
from .base_operation import BaseOperation
from .base_workflow import BaseWorkflow
from .consolidate_memory_op import ConsolidateMemoryOp
from .frontend_operation import FrontendOperation
__all__ = [
"BackendOperation",
"BaseOperation",
"BaseWorkflow",
"ConsolidateMemoryOp",
"FrontendOperation"
]

View file

@ -0,0 +1,7 @@
from .base_memory_service import BaseMemoryService
from .memory_scope_service import MemoryScopeService
__all__ = [
"BaseMemoryService",
"MemoryScopeService"
]

View file

@ -0,0 +1,23 @@
from .base_memory_store import BaseMemoryStore
from .base_monitor import BaseMonitor
from .dummy_memory_store import DummyMemoryStore
from .dummy_monitor import DummyMonitor
from .llama_index_es_memory_store import LlamaIndexEsMemoryStore
from .llama_index_sync_elasticsearch import (
# get_elasticsearch_client,
# _mode_must_match_retrieval_strategy,
# _to_elasticsearch_filter,
# _to_llama_similarities,
ESCombinedRetrieveStrategy,
SyncElasticsearchStore
)
__all__ = [
"BaseMemoryStore",
"BaseMonitor",
"DummyMemoryStore",
"DummyMonitor",
"LlamaIndexEsMemoryStore",
"ESCombinedRetrieveStrategy",
"SyncElasticsearchStore"
]

View file

@ -0,0 +1,33 @@
from .datetime_handler import DatetimeHandler
from .logger import Logger
from .prompt_handler import PromptHandler
from .registry import Registry
from .response_text_parser import ResponseTextParser
from .timer import Timer
from .tool_functions import (
underscore_to_camelcase,
camelcase_to_underscore,
init_instance_by_config,
prompt_to_msg,
char_logo,
md5_hash,
contains_keyword,
cosine_similarity
)
__all__ = [
"DatetimeHandler",
"Logger",
"PromptHandler",
"Registry",
"ResponseTextParser",
"Timer",
"underscore_to_camelcase",
"camelcase_to_underscore",
"init_instance_by_config",
"prompt_to_msg",
"char_logo",
"md5_hash",
"contains_keyword",
"cosine_similarity"
]

View file

@ -0,0 +1,11 @@
from .base_worker import BaseWorker
from .dummy_worker import DummyWorker
from .memory_base_worker import MemoryBaseWorker
from .memory_manager import MemoryManager
__all__ = [
"BaseWorker",
"DummyWorker",
"MemoryBaseWorker",
"MemoryManager"
]

View file

@ -0,0 +1,21 @@
from .contra_repeat_worker import ContraRepeatWorker
from .get_observation_with_time_worker import GetObservationWithTimeWorker
from .get_observation_worker import GetObservationWorker
from .get_reflection_subject_worker import GetReflectionSubjectWorker
from .info_filter_worker import InfoFilterWorker
from .load_memory_worker import LoadMemoryWorker
from .long_contra_repeat_worker import LongContraRepeatWorker
from .update_insight_worker import UpdateInsightWorker
from .update_memory_worker import UpdateMemoryWorker
__all__ = [
"ContraRepeatWorker",
"GetObservationWithTimeWorker",
"GetObservationWorker",
"GetReflectionSubjectWorker",
"InfoFilterWorker",
"LoadMemoryWorker",
"LongContraRepeatWorker",
"UpdateInsightWorker",
"UpdateMemoryWorker"
]

View file

@ -0,0 +1,17 @@
from .extract_time_worker import ExtractTimeWorker
from .fuse_rerank_worker import FuseRerankWorker
from .print_memory_worker import PrintMemoryWorker
from .read_message_worker import ReadMessageWorker
from .retrieve_memory_worker import RetrieveMemoryWorker
from .semantic_rank_worker import SemanticRankWorker
from .set_query_worker import SetQueryWorker
__all__ = [
"ExtractTimeWorker",
"FuseRerankWorker",
"PrintMemoryWorker",
"ReadMessageWorker",
"RetrieveMemoryWorker",
"SemanticRankWorker",
"SetQueryWorker"
]

View file

@ -0,0 +1,15 @@
from .action_status_enum import ActionStatusEnum
from .language_enum import LanguageEnum
from .memory_type_enum import MemoryTypeEnum
from .message_role_enum import MessageRoleEnum
from .model_enum import ModelEnum
from .store_status_enum import StoreStatusEnum
__all__ = [
"ActionStatusEnum",
"LanguageEnum",
"MemoryTypeEnum",
"MessageRoleEnum",
"ModelEnum",
"StoreStatusEnum"
]

View file

@ -0,0 +1,10 @@
from .memory_node import MemoryNode
from .message import Message
from .model_response import ModelResponse, ModelResponseGen
__all__ = [
"MemoryNode",
"Message",
"ModelResponse",
"ModelResponseGen"
]