I'm a Data Scientist. For some time, I've been working on a library for feature engineering.
• GitHub: https://github.com/feature-express/feature-express
• Website: https://feature.express
It isn't yet complete, and I wouldn't consider it ready for production use or handling larger datasets. Here are some of its characteristics:
• Event-based workflows: Initially, everything is converted to an event format, ingested into an event store, and processed from there.
• In-memory: Both the event store and evaluation have been built from scratch.
• Written in Rust, but there's a Python package available.
• A DSL (Domain Specific Language) for defining aggregations, similar to SQL.
Why am I developing this? I've always found it challenging to build models based on time. These models can be surprisingly tricky, and there's a high risk of accidentally using future data, which can lead to data leakage. FeatureExpress is designed to nearly eliminate such mistakes. Moreover, I believe that representing data as events is an intuitive approach.
Right now I start my prompts to chatgpt-4 with "dont be lazy". For every question I have it answers that it is a complex problem... GPT-3.5 in the API is more consistent that chatgpt-4. Even with some additional prompts it is making so many mistakes that it takes me multiple tries to get the right output with conversation resets from time to time to start from the previous solution.
I'm pretty surprised more people dont use logit biases to call openai with. Checking if something is either a or b means that the tokens for those letters must be 100 weight which means they will be chosen no matter what and no other character is allowed.
Except Paul McCartney is considered as one of the best song writers of all time. There may be many musicians who can do the same on a technical level but even then he is a significant outlier.