Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Figure out how type hints should work #21441

Open
damccorm opened this issue Jun 4, 2022 · 1 comment
Open

Figure out how type hints should work #21441

damccorm opened this issue Jun 4, 2022 · 1 comment

Comments

@damccorm
Copy link
Contributor

damccorm commented Jun 4, 2022

RunInference main interface could have many different types of input and ouput types.

 

It probably should have generice typehints of some sort, but the code that infers them will need to be specified.

 

I haven't yet figured out how to do this, but I'm convinced that getting really specific type hints will help our users find errors.

 

We have

@input output types unknown

RunInference(PTransform)
  has RunInferenceDoFun (also input output types unknown)
    calls composedRunInferenceFn (input/output types known)

we need to get correct type hints into the RunInference PTransform and it's not apparent how to do that exactly since annotations won't be possible.

 

I think we'll need some correct values to put into the with_output_type chain in the ptransform.

Imported from Jira BEAM-14217. Original Jira may contain additional context.
Reported by: Ryan.Thompson.
Subtask of issue #21435

@AnandInguva
Copy link
Contributor

One of the mypy errors Type variable "apache_beam.ml.inference.base._INPUT_TYPE" is unbound [valid-type]. Currently, we ignore these error as the _INPUT_TYPE and __OUTPUT_TYPE are unbounded and mypy needs generic variable to bounded source.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants