Skip to main content

A set of tools for handling data to create GailBot plugins

Project description

GailBotPluginsTools

Overview

GailBotPluginsTools is a package designed to facilitate the creation and management of plugins for the GailBot platform. It simplifies the interaction with transcriptions, providing data handlers that manipulate XML markers and utterances.

Features

  • Marker Utterance Dictionary: Efficiently manages utterances, their timings, and speaker information.
  • Structured Interaction: Provides an outer layer that wraps around the marker utterance dictionary for enhanced functionality.
  • Data Objects: Defines necessary data structures for handling utterances effectively.

Usage

The package includes several key modules:

marker_utterance_dict.py

  • Class: MarkerUtteranceDict
  • Purpose: Creates a dictionary to manage utterances, keeping track of speaker information, start and end times, and overlaps.
  • Key Methods:
    • __init__: Initializes the dictionary with utterance data.
    • turn_criteria_overlaps: Checks if the difference between two utterances meets a defined threshold.

StructureInteract.py

  • Class: StructureInteract
  • Purpose: Interacts with the marker utterance dictionary and manages the output path for plugin results.
  • Key Methods:
    • apply: The main driver function that processes the input data and populates the data structure.
    • parse_xml_to_gbpluginmethods: Converts XML data into a format usable by the GailBot Plugin methods.

data_objects.py

  • Class: UttObj
  • Purpose: Defines the structure for an utterance object, encapsulating its properties like start time, end time, speaker, and text.

Installation

To install the package, use the following command:

pip install gailbottools

Example

Here is a simple example of how to use the package:

from gailbot_plugin_tools import StructureInteract

# Sample XML data
xml_data = """
<transcript>
    <u speaker="Speaker1">
        <w start="0.0" end="0.5">Hello</w>
        <w start="0.6" end="1.0">World</w>
    </u>
</transcript>
"""

# Create an instance of StructureInteract
interactor = StructureInteract()
# Apply the XML data
interactor.apply(xml_data)

Contributing

Contributions are welcome! Please submit a pull request or open an issue for suggestions and enhancements.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Authors

  • Hannah Shader
  • Jason Wu
  • Jacob Boyar
  • Vivian Li
  • Eva Caro
  • Manuel Pena
  • Phi Bui

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

GailBotTools-0.2.0b0.tar.gz (33.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

GailBotTools-0.2.0b0-py3-none-any.whl (43.3 kB view details)

Uploaded Python 3

File details

Details for the file GailBotTools-0.2.0b0.tar.gz.

File metadata

  • Download URL: GailBotTools-0.2.0b0.tar.gz
  • Upload date:
  • Size: 33.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.16

File hashes

Hashes for GailBotTools-0.2.0b0.tar.gz
Algorithm Hash digest
SHA256 ffaf707070fc1e37798b37d7ca6e94db983ff5f27dea856fe55f8e5d5bda12ee
MD5 c5cedef49cd1d8f6a8ed5afd1a2f04ec
BLAKE2b-256 e221c860fe1ef5b853ec831a673baa2ab5cae5a977a0016c611abd342470f296

See more details on using hashes here.

File details

Details for the file GailBotTools-0.2.0b0-py3-none-any.whl.

File metadata

  • Download URL: GailBotTools-0.2.0b0-py3-none-any.whl
  • Upload date:
  • Size: 43.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.16

File hashes

Hashes for GailBotTools-0.2.0b0-py3-none-any.whl
Algorithm Hash digest
SHA256 d4208d4e721778a1a6422d13cb7f1d9dac4a215566b7d504de2d542106f98911
MD5 f1e4bf3d1d424c7cca76b2e4aa38d7a3
BLAKE2b-256 b1c11c97f734d3b3d1ef9dd4775b6c77ad6fa60935da4fdc8a7b82c598d39ed5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page