How are you prompting ChatGPT such that you get useful results in a real world code base? It doesn’t have any context. The context is what makes Copilot work.
By default, ChatGPT can only give a generic answer. Do you just paste the entire file in there?
For example let’s say I want to write a function foo() that calls functions bar() and baz() defined in the same file and uses a library Y that I already imported. If I just write the name of the function, Copilot will often autocomplete a reasonable body for me. If I wanted to use ChatGPT then I would have to first tell it about foo() and bar() and the dependency on Y, and by the time I’ve finished telling it about all of that I could have written the function by hand twice over.