semvec/pypi-packages huggingface dataset:
sulat 0.1.1
An opinionated way of doing AI - Task-oriented ai nodes for general-computing
License: MIT
Requires Python: >=3.8
Keywords: ai, transcription, audio, whisper, canary, speech-to-text

<div align="center">
  <h1>sulat</h1>
  <img src="public/icon.png" alt="icon" width="80" height="80">
  <p><em>an Opinionated Way of doing AI - Task-oriented AI nodes </em></p>
</div>

## Installation

### From PyPI (Recommended)

```bash
pip install sulat
```

### From Source

```bash
uv venv
source .venv/bin/activate
uv pip install -e .
```

## Usage

```python
import sulat

# Basic transcription (uses Whisper model)
text = sulat.transcribe("audio.wav")

# High performance transcription (uses Canary model)
text = sulat.transcribe("audio.wav", high_performance=True, source_lang="es")

# Control source and target languages
text = sulat.transcribe("audio.wav", source_lang="es", target_lang="en")

# Additional options
text = sulat.transcribe(
    "audio.wav",
    high_performance=False,  # Use Whisper (default) or Canary model
    source_lang="auto",      # Auto-detect or specify language
    target_lang="en",        # Target language for translation
    response_format="json",  # Response format
    temperature=0.0          # Temperature for generation
)
```

### Environment Setup

Create a `.env` file in your project root:

```bash
# .env
SURUS_API_KEY=your_api_key_here
```

Or set the environment variable directly:
```bash
export SURUS_API_KEY="your_api_key"
```

## Development

```bash
# Setup environment
uv venv
source .venv/bin/activate
uv pip install -e ".[dev]"

# Run tests
pytest tests/
```
procyclingstats 0.2.7
A Python API wrapper for procyclingstats.com
License: MIT
Keywords: cycling cycling-stats procyclingstats scraper html-parsing sports-analytics

procyclingstats
===============

Procyclingstats is a Python package for scraping `procyclingstats.com`_,
which is a website with cycling stats. It's recommended to get familiar with
the website before using this package.

Installation
------------

Using pip:

.. code-block:: text

    $ pip install procyclingstats

Manual (for development):

.. code-block:: text

    $ git clone https://github.com/themm1/procyclingstats.git
    $ pip install -r procyclingstats/requirements_dev.txt

Basic usage
-----------

Basic Rider class usage:

.. code-block:: text

    >>> from procyclingstats import Rider
    >>> rider = Rider("rider/tadej-pogacar")
    >>> rider.birthdate()
    "1998-9-21"
    >>> rider.parse()
    {
        'birthdate': '1998-9-21',
        'height': 1.76,
        'name': 'Tadej  Pogačar',
        'nationality': 'SI',
        ...
    }

Interface consists from scraping classes which are currently ``Race``,
``RaceStartlist``, ``RaceClimbs``, ``RaceCombativeRiders``, ``Ranking``,
``Rider``, ``RiderResults``, ``Stage`` and ``Team``. Usage of all scraping
classes is almost the same and the only difference among them are parsing
methods as is for example ``birthdate`` in Rider class usage example.

Unexpected behaviour and parsing errors
---------------------------------------

Since the project is a web scraper which parses HTML, it's difficult to make
it reliable and it's common to encounter some HTML parsing problems. After
getting some kind of unexpected behaviour or parsing errors, it's recommended
to update the package on your system using
``pip install procyclingstats --upgrade``. If the problem proceeds, see the
GitHub issues_ page and if the issue hasn't been opened yet, don't hesitate to
open one!

Links
-----

- GitHub_
- PyPI_
- Documentation_

.. _GitHub: https://github.com/themm1/procyclingstats
.. _PyPI: https://pypi.org/project/procyclingstats
.. _Documentation: https://procyclingstats.readthedocs.io/en/latest
.. _procyclingstats.com: https://www.procyclingstats.com
.. _selectolax: https://github.com/rushter/selectolax
.. _issues: https://github.com/themm1/procyclingstats/issues