src.utils.docstring_generation
Module Contents
- src.utils.docstring_generation.logger
- src.utils.docstring_generation.DEFAULT_OPENAI_MODEL = 'gpt-4o-mini'
- src.utils.docstring_generation.DEFAULT_CODEX_COMMAND = 'codex exec --skip-git-repo-check -'
- src.utils.docstring_generation.DEFAULT_CLAUDE_COMMAND = 'claude -p --output-format text'
- src.utils.docstring_generation.CLI_TIMEOUT_SECONDS = 120
- src.utils.docstring_generation.SUPPORTED_AI_PROVIDERS
- src.utils.docstring_generation.resolve_ai_provider(model: str | None = None, api_key: str | None = None) tuple[str, str | None]
Resolve the AI provider and model from explicit model prefixes, environment, and API key state.
Model values may be prefixed with
openai:,codex:, orclaude:. Without a prefix,AUTODOC_AI_PROVIDERchooses the backend. If OpenAI is not configured, the CLI fallback is used so local Codex or Claude authentication can handle generation.
- src.utils.docstring_generation.configure_openai(api_key: str | None = None)
Configure OpenAI API with the provided API key.
- Parameters:
api_key (str, optional) – OpenAI API key. If None, reads from environment.
- src.utils.docstring_generation.create_docstring_prompt(code: str, language: str | None = 'python') str
Create a prompt for ChatGPT to generate a concise docstring.
- Parameters:
code (str) – The code block to Analyse.
language (str) – Programming language of the code.
- Returns:
Formatted prompt for docstring generation.
- Return type:
str
- src.utils.docstring_generation.create_openai_docstring_prompt(code: str, language: str | None = 'python') str
- src.utils.docstring_generation.generate_docstring(code: str, language: str | None = 'python', api_key: str | None = None, model: str | None = DEFAULT_OPENAI_MODEL) str | None
Generate a concise docstring for the given code using the configured AI backend.
- Parameters:
code (str) – The code block for which to generate docstring.
language (str) – Programming language of the code (default: “python”).
api_key (str, optional) – OpenAI API key, used only for the OpenAI backend.
model (str) – Optional model name. Prefix with openai:, codex:, or claude: to select a provider.
- Returns:
Generated docstring or None if generation fails.
- Return type:
str
- src.utils.docstring_generation.generate_docstring_with_openai(code: str, language: str | None = 'python', api_key: str | None = None, model: str | None = DEFAULT_OPENAI_MODEL) str | None
Backward-compatible wrapper for callers/tests that still use the old OpenAI-specific name.
- src.utils.docstring_generation.generate_docstrings_for_code_blocks_openai(code_blocks_data: list, language: str = 'python', model: str = DEFAULT_OPENAI_MODEL) list
Generate docstrings for multiple code blocks using the configured AI backend.
- Parameters:
code_blocks_data (list) – List of dictionaries containing code block information.
language (str) – Programming language of the code blocks.
model (str) – Optional AI model name or provider-prefixed model.
- Returns:
Updated list with generated docstrings.
- Return type:
list
- src.utils.docstring_generation.format_docstring_for_language(docstring: str, language: str | None) str
Format the generated docstring according to language conventions.
- Parameters:
docstring (str) – Raw docstring content.
language (str) – Programming language.
- Returns:
Formatted docstring.
- Return type:
str