Skip to content

API Reference

Welcome to the TorchLingo API reference. This section documents all public classes, functions, and modules.

Module Overview

TorchLingo is organized into four main modules:

Most Used Classes

Class Description
Config Centralized configuration
NMTDataset PyTorch dataset for parallel text
SimpleVocab Simple vocabulary builder
MeCabVocab Japanese morphological analysis
JiebaVocab Chinese word segmentation
SimpleTransformer Transformer encoder-decoder
SimpleSeq2SeqLSTM LSTM encoder-decoder

Most Used Functions

Function Description
get_default_config() Get default configuration
load_data() Load data from file
collate_fn() Batch collation with padding
create_dataloaders() Create train/val data loaders

Import Patterns

# Configuration
from torchlingo.config import Config, get_default_config

# Data processing
from torchlingo.data_processing import (
    NMTDataset,
    SimpleVocab,
    SentencePieceVocab,
    MeCabVocab,
    JiebaVocab,
    collate_fn,
    create_dataloaders,
)

# Models
from torchlingo.models import SimpleTransformer, SimpleSeq2SeqLSTM

# Preprocessing
from torchlingo.preprocessing import load_data, save_data, parallel_txt_to_dataframe

Full Module Import

import torchlingo

# Access submodules
cfg = torchlingo.config.get_default_config()
model = torchlingo.models.SimpleTransformer(...)

Conventions

Parameter Fallback

Most functions accept both explicit parameters and a config object. The priority is:

  1. Explicit parameter (if provided)
  2. Config object value (if provided)
  3. Default config value
# These are equivalent:
dataset = NMTDataset("data.tsv", max_length=100)
dataset = NMTDataset("data.tsv", config=Config(max_seq_length=100))

Type Annotations

All public APIs are fully type-annotated:

def encode(self, sentence: str, add_special_tokens: bool = True) -> List[int]:
    ...

Docstring Style

We use Google-style docstrings:

def function(param1: int, param2: str) -> bool:
    """Short description.

    Longer description if needed.

    Args:
        param1: Description of param1.
        param2: Description of param2.

    Returns:
        Description of return value.

    Raises:
        ValueError: When something is wrong.
    """

Version Compatibility

  • Python: 3.10+
  • PyTorch: 2.0+
  • Pandas: 1.5+

Getting Help

  • 📖 Check the Concepts section for explanations
  • 🎓 Follow the Tutorials for step-by-step guides
  • 🐛 Report issues on GitHub