document#

Functions#

document(input_dir, language, output_dir, llm_name[, ...])

Module Contents#

document.document(input_dir, language, output_dir, llm_name, failure_dir=None, max_prompts=10, overwrite=False, doc_mode='cloze', comments_per_request=None, drop_comments=False, temperature=0.7, collection=None, splitter_type='file', refiner_types=['JanusRefiner'], retriever_type=None, max_tokens=None)#
Parameters:
  • input_dir (typing_extensions.Annotated[pathlib.Path, typer.Option('--input', '-i', help='The directory containing the source code to be translated. The files should all be in one flat directory.')]) –

  • language (typing_extensions.Annotated[str, typer.Option('--language', '-l', help='The language of the source code.', click_type=click.Choice(sorted(LANGUAGES)))]) –

  • output_dir (typing_extensions.Annotated[pathlib.Path, typer.Option('--output-dir', '-o', help='The directory to store the translated code in.')]) –

  • llm_name (typing_extensions.Annotated[str, typer.Option('--llm', '-L', help="The custom name of the model set with 'janus llm add'.")]) –

  • failure_dir (typing_extensions.Annotated[Optional[pathlib.Path], typer.Option('--failure-directory', '-f', help='The directory to store failure files during documentation')]) –

  • max_prompts (typing_extensions.Annotated[int, typer.Option('--max-prompts', '-m', help='The maximum number of times to prompt a model on one functional block before exiting the application. This is to prevent wasting too much money.')]) –

  • overwrite (typing_extensions.Annotated[bool, typer.Option('--overwrite/--preserve', help='Whether to overwrite existing files in the output directory')]) –

  • doc_mode (typing_extensions.Annotated[str, typer.Option('--doc-mode', '-d', help='The documentation mode.', click_type=click.Choice(['cloze', 'summary', 'multidoc', 'requirements']))]) –

  • comments_per_request (typing_extensions.Annotated[int, typer.Option('--comments-per-request', '-rc', help='The maximum number of comments to generate per request when using Cloze documentation mode.')]) –

  • drop_comments (typing_extensions.Annotated[bool, typer.Option('--drop-comments/--keep-comments', help='Whether to drop or keep comments in the code sent to the LLM')]) –

  • temperature (typing_extensions.Annotated[float, typer.Option('--temperature', '-t', help='Sampling temperature.', min=0, max=2)]) –

  • collection (typing_extensions.Annotated[str, typer.Option('--collection', '-c', help='If set, will put the translated result into a Chroma DB collection with the name provided.')]) –

  • splitter_type (typing_extensions.Annotated[str, typer.Option('-S', '--splitter', help='Name of custom splitter to use', click_type=click.Choice(list(CUSTOM_SPLITTERS.keys())))]) –

  • refiner_types (typing_extensions.Annotated[list[str], typer.Option('-r', '--refiner', help='List of refiner types to use. Add -r for each refiner to use in refinement chain', click_type=click.Choice(list(REFINERS.keys())))]) –

  • retriever_type (typing_extensions.Annotated[str, typer.Option('-R', '--retriever', help='Name of custom retriever to use', click_type=click.Choice(['active_usings', 'language_docs']))]) –

  • max_tokens (typing_extensions.Annotated[int, typer.Option('--max-tokens', '-M', help="The maximum number of tokens the model will take in. If unspecificed, model's default max will be used.")]) –