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

Can you add an AI code helper like Tabnine or Copilot to Spyder? #20632

Open
river7816 opened this issue Mar 4, 2023 · 41 comments
Open

Can you add an AI code helper like Tabnine or Copilot to Spyder? #20632

river7816 opened this issue Mar 4, 2023 · 41 comments

Comments

@river7816
Copy link

Spyder is the best IDE I've ever used, better than jupyter lab, Pycharm, vscode...But since spyder 5, it no longer support Kite. I know it is not spyder's fault (Kite closed their service), but there are so many other alternatives, like Tabnine which I used a lot. Can you make them available in spyder 5

@ccordoba12
Copy link
Member

Hey @river7816, thanks for reporting. You said:

Spyder is the best IDE I've ever used, better than jupyter lab, Pycharm, vscode

Thanks for your kind words! They are really important for us.

But since spyder 5, it no longer support Kite. I know it is not spyder's fault (Kite closed their service), but there are so many other alternatives, like Tabnine which I used a lot. Can you make them available in spyder 5

You'll be happy to know that we just asked for funding precisely to add support for another AI-based completion service. If we are granted the funds, we'll have an initial prototype for Tabnine or Copilot by the end of the year.

@ccordoba12 ccordoba12 changed the title Can you add an AI code helper like Tabnine, kite or Copilot to spyder Can you add an AI code helper like Tabnine or Copilot to Spyder? Mar 4, 2023
@JTiagoValente
Copy link

I came here to say, please add copilot to the IDE.

I don't really want to switch to VS Code to use copilot....

@yxmnjxzx
Copy link

As the best IDE, please add copilot to the IDE.

@Alecampoy
Copy link

I aggree with @river7816 in everything

@ccordoba12
Copy link
Member

Then you guys will be glad to know that we received the funding to work on an AI-based code completion client. An initial prototype should be ready by the end of the year.

@haukot
Copy link

haukot commented Jun 19, 2023

HI! I've done research and reverse-engineered the Github Copilot protocol between IDE plugin and agent.js, and have tried to document it. This is based on Github Copilot plugin version for JetBrains and some parts of agent.js. You can see the specs in this repo https://github.com/haukot/copilot_specifications
Hope this could help in plugin development!

@ccordoba12
Copy link
Member

That's great @haukot! Thanks a lot for sharing your work!

@Bill16881688
Copy link

Then you guys will be glad to know that we received the funding to work on an AI-based code completion client. An initial prototype should be ready by the end of the year.

Hi, thank you for make this happen! U get enough funds?

@zeplaz
Copy link

zeplaz commented Jul 20, 2023

here to say id prefer Tabnine support.
i like supporting other companies not google, and the rust support is better in tabnine for other IDE. so, im not intrested in having copilot. plus, i think tabnine works better as a system when it pickup on your own style over time. much more organic.

@ccordoba12
Copy link
Member

Hi, thank you for make this happen! U get enough funds?

We got funding for an initial prototype.

@baskew
Copy link

baskew commented Jul 25, 2023

That's great news!

Can you also think about how spyder w/copilot can be used in organizations that are concerned about sharing sensitive content online.

@sp8rks
Copy link

sp8rks commented Jul 26, 2023

switching to vscode until spyder has this.

@abhilashmathewsvow
Copy link

Hi there! Just following up on the status of adding Copilot to Spyder? Super excited for it!

@dalthviz
Copy link
Member

dalthviz commented Sep 8, 2023

Hi @abhilashmathewsvow ! The proposal details can be checked here: https://github.com/spyder-ide/spyder/wiki/NumFOCUS-Small-Development-Grant-Spring-2023 . Following the plan we have some PRs open already:

Building an external completion provider proptotype that uses some service as Tabnine or Copilot/Open AI models is something will be working on in the last few months of the proposal :)

@arefks
Copy link

arefks commented Sep 18, 2023

Yes please add the copilot to spyder.

@crystaltaggart
Copy link

I am also here to vote for copilot or direct Chat GPT integration. So far Spyder is THE BEST IDE for coding. I haven't found it's equivalent. I tried using DataSpell which is Jetbrains' half-baked attempt at mimicking the functionality that Spyder provides specifically because copilot was supported but DataSpell is no Spyder and there are many things that Spyder does that DataSpell does not. I know you are open source, but I'd pay for an IDE for this.

@arefks
Copy link

arefks commented Oct 11, 2023

I also vote for an integrated copilot in spider.

@carlmannix-mup
Copy link

+1 Git's Co Pilot would make Spyder unbeatable. I have subscribed

@sepjc96
Copy link

sepjc96 commented Nov 24, 2023

+1 to adding Co-Pilot on Spyder

@kiltcheck
Copy link

Adding my voice to upvoting Copilot on Spyder! Definitely my favorite Python IDE by far!

@jds33
Copy link

jds33 commented Dec 2, 2023

I would love to use Copilot in Spyder as well. Please make this happen, otherwise i'll have to switch to vscode or something else. Which I don't want to do because Spyder is pretty good otherwise.

@weishanlee
Copy link

Ya! I totally agree with the idea to integrate github copilot into spyder! I don't want to switch back to Visual Studio.

@tecbr
Copy link

tecbr commented Jan 9, 2024

  • 1 Add some AI coding assistant options.

@shihabkhan1
Copy link

Just here to push for github copilot integration. Very happy if Kite can do the job, but I guess Copilot is the way to go.

Please please please get this done! Really don't want to switch to PyCharm.

@AtanasAtanasovIpsos
Copy link

+1 is there a timeline for when can we expect this feature?

@backmind
Copy link

backmind commented Feb 7, 2024

+1, please!

@puccahwk
Copy link

puccahwk commented Feb 8, 2024

Any update on this?

@oscarfasanchez
Copy link

we desperately need copilot support to keep using Spyder

@jlluch
Copy link

jlluch commented Feb 14, 2024

I support the integration of Copilot into Spyder; currently, I'm coding with VSCode using Copilot and then debugging in Spyder...It's not the best solution.

@river7816
Copy link
Author

I support the integration of Copilot into Spyder; currently, I'm coding with VSCode using Copilot and then debugging in Spyder...It's not the best solution.

I use Pycharm now, the debug and the integration of copilot is good

@jsbautista
Copy link
Contributor

jsbautista commented Feb 19, 2024

Hi there, my name is Juan Sebastian and I have been working for the last 4 months on a proposal related to improvements to the code completion external providers support inside Spyder ("Improving external completion plugins development support in Spyder ''). As a result of the various comments/requests here and as part of that proposal , we have been doing a review to find out possible services which could be used to create an external completions provider (using the current completions provider API Spyder offers). From our findings, we decided to divide the tools found into 3 groups. The first group are all the tools that in some way depend on the Language Server Protocol (LSP) to be implemented. After some exploration, for those tools we will need to modify and extend the current Spyder API to allow the possibility to register new classes and configurations through an external provider definition (we actually found that a issue related with extending the LSP support/API already exists at: Provide API to add a new language to the LSP service · Issue #11326 · spyder-ide/spyder (github.com)). Within these tools we have Copilot or Tabnine. The second group corresponds to the tools that can be used via some REST API definition (like the Kite provider definition which code we moved outside Spyder source code as part of the mentioned proposal - spyder-ide/kite-provider: Completion plugin provider implementation for Kite (github.com)). Within these tools we have LangChain (can work with different model providers like OpenAI but also local models), privateGPT or LMStudio. Finally, the last group corresponds to the tools that do not necessarily work as a code completion provider in the sense Spyder currently defines such providers, but more like tools to generate code from the console or to complete tests/get code documentation; within these tools we have Codium.

Following this exploration, and taking into account the proposal scope, as the last part of it we will try to:

  • Start extending the support for custom LSP definitions within Spyder and the completions plugin API (so in the future external completions providers that use services as Copilot or Tabnine can be created easily)

  • Create an initial MVP of an external completions provider using langchain (to leverage in the current API Spyder offers for the creation of external completions providers)

  • Also, if anyone one to explore the current API Spyder offers to create external completions providers, now we have the following wiki page: Dev: SpyderCompletionProvider API · spyder-ide/spyder Wiki (github.com)

Any feedback is appreciated, so let us know!

@Christonikos
Copy link

Upvoting this on my side as well. I've been using Spyder for over 8 years, and convinced my whole data science team to do the same, but the comparison with other IDEs where co-pilot is integrated is, unfortunately, inevitable.

@wxtomquist
Copy link

Any updates on this? I'm in the same boat as others here. Thanks!

@alexdjulin
Copy link

Same here, really hoping to see Copilot integrated into Spider. Best from Berlin ♥

@emooney06
Copy link

Same here! I fell in love with Spyder about 6 years ago, and now have my whole team using Spyder. I make a monthly donation and will continue to do so. I'm looking forward to seeing co-pilot or something similar soon!

@csongorbathory
Copy link

+1, please!

@jishnuksankar
Copy link

Any updates on this?

@bwinsto2
Copy link

Simple as the fact that I’d have to switch over to another IDE soon… but I love spyder and would love AI integration <3

@weishanlee
Copy link

Unfortunately, maybe it is not as important as it looks for the proposal of github-copilot-like integration into spyder. According to my experience, the github copilot is not working properly as expected as per assisting on generating and debugging codes. I would suggest using openai plus plugins, such as Python, Data Analysis, and something alike.

@dalthviz
Copy link
Member

dalthviz commented May 1, 2024

Hi there, as an update on the work mentioned at #20632 (comment) we released a completion provider which uses Langchain and OpenAI models. For more info you can check the completion provider repo: https://github.com/spyder-ide/langchain-provider

Any feedback is appreciated!

@spyder-ide spyder-ide locked as too heated and limited conversation to collaborators May 1, 2024
@ccordoba12
Copy link
Member

ccordoba12 commented May 1, 2024

Besides what @dalthviz said, we're also exploring several possibilities to get funding to implement a Copilot or similar AI-based client for Spyder. We hope to have good news for you in a few weeks.

In the meantime, I'm going to block this issue so both Daniel's and my comment are visible to new people that arrive to it.

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

No branches or pull requests