Code Monkey home page Code Monkey logo

Comments (4)

martinjm97 avatar martinjm97 commented on May 29, 2024

Hi @Enolerobotti,

Thank you for bringing this to our attention! Yes, the slow part is the source code inspection in order to extract the help strings from comments. In our machine learning workflows, we find this overhead to be acceptable, but we can imagine that certain applications may need a faster argument parser. In the future, we will add a flag to disable this. Concretely, we would skip this call:

self.class_variables = self._get_class_variables()

Best,
Kyle and Jesse

from typed-argument-parser.

Enolerobotti avatar Enolerobotti commented on May 29, 2024

Hi @martinjm97,

Thank you for your reply!
Indeed, the _get_class_variables method works slow. The problem is that when I try to use ChemProp in my workflow, I need some default arguments (which are defined inside a TAP instance) to be loaded several times. I have to initiate TAP based classes several times due to an assertion (btw, for me it looks redundant). So, for ensemble of 10 models, I spend additional 0.5 sec per molecule to predict. For list longer than 1000 molecules it would be worth for me to get rid of redundant operations.

Cheers,
Artem

from typed-argument-parser.

martinjm97 avatar martinjm97 commented on May 29, 2024

@Enolerobotti,

That makes sense! I didn't think a Tap would be in an inner loop. We'll add the flag soon and then you can save the 500s for your 1000 molecules! Thanks for letting us know and for the clear explanation.

--Jesse

from typed-argument-parser.

jackdewinter avatar jackdewinter commented on May 29, 2024

Encountering the same issue, but now it seems like the class variables are being used on line 72 in _add_argument:

            # Description
            if variable in self.class_variables:
                kwargs['help'] += ' ' + self.class_variables[variable]['comment']

and on line 298 in _add_arguments:

        # Add class variables (in order)
        for variable in self.class_variables:

As that variable is now also being used for ordering, is it now not possible to make this change as noted above?

from typed-argument-parser.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.