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

ggml : new operations supported in encodec.cpp #281

Closed
PABannier opened this issue Jun 24, 2023 · 4 comments · Fixed by #316
Closed

ggml : new operations supported in encodec.cpp #281

PABannier opened this issue Jun 24, 2023 · 4 comments · Fixed by #316
Assignees
Labels
enhancement New feature or request

Comments

@PABannier
Copy link
Contributor

Hi!

I just released encodec.cpp which features a handful of new operations, like transposed 1d convolution, argmax and activation functions like elu and tanh.

Is it something you'd like implemented in ggml?

@ggerganov
Copy link
Owner

Wow - great work!

argmax, elu and tanh seem like good additions.
Wondering if transposed_conv_1d could be avoided - either become part of conv_1d (see #285) or do the transposition in user-code and then ggml_cont().

In any case, I will add reference to your project in the README as it is a very important step towards supporting Bark TTS.
Would be great if you add a few basic steps to test out the implementation - I see you have a Quick start section that will probably be used exactly for that

@ggerganov ggerganov changed the title New operations supported in encodec.cpp ggml : new operations supported in encodec.cpp Jun 25, 2023
@ggerganov ggerganov added the enhancement New feature or request label Jun 25, 2023
@iboB
Copy link
Contributor

iboB commented Jun 27, 2023

relevant: I'm working on the 1d/2d cleanup from the interface's (ops) perspective #313

@PABannier
Copy link
Contributor Author

@iboB I've implemented a common interface for 1d conv with even and odd kernels in encodec.cpp. If it's of interest for you, you can find it here: https://github.com/PABannier/encodec.cpp/blob/main/ggml.c#L6550 .

@PABannier
Copy link
Contributor Author

@ggerganov I'm not sure I get how to implement conv_transpose_1d in user code using only conv_1d. In any case, it might be worth benchmarking your solution and the implementation of conv_transpose_1d as implemented in encodec.cpp since it is used during forward passes by encodec.

For tanh, elu and argmax, I just opened a PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants