Skip to content

Serializable Fonduer model #259

@HiromuHota

Description

@HiromuHota

Is your feature request related to a problem? Please describe.

I develop a Fonduer-based app locally on my laptop.
Once it's done, I'd like to package the whole Fonduer pipeline (parsing, extraction, featurization, and classification) and deploy it to a remote place to serve.
However, a Fonduer-based app is not easy to package hence not easy to deploy.

Describe the solution you'd like

Add a Fonduer model class that is

  1. Serializable (e.g., a class with save and load member methods like below)
class FonduerModel:
    def save(path_to_save):
    def load(path_to_load):
  1. Capable of executing any phase of the Fonduer pipeline
  2. (Hopefully) Manageable by MLflow

Describe alternatives you've considered

I can create one or more of python scripts that do all the phase, package them, and deploy it.
This is cumbersome because the python script has to include many things (matchers, mention_classes, mention_spaces, candidate_classes, etc.) and it is not obvious what should be included for serving.

Additional context

I'd like to make Fonduer more deployable and servable.
I've been testing MLflow to package a Fonduer-based app and found it was difficult to do so when there is no serializable Fonduer model.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions