Use AI in editor
This functionality relies on the AI Assistant plugin that requires an additional license.
For more information about licensing and enabling AI Assistant, refer to JetBrains AI Service licensing and Enable AI Assistant plugin.
Generate code and use prompts right in the editor.
Select a piece of code that you want to modify or place the caret anywhere in the editor and press Ctrl0\.
Alternatively, right-click anywhere in the editor to open the context menu, select AI Actions and then Generate Code.
note
If you select a piece of code and ask AI Assistant to generate code, it will only suggest changes for the selected piece of code.
If you place the caret anywhere in the editor before asking AI Assistant to generate code, the generated code will be inserted in the editor at the caret.
In the input field, write your prompt and press Enter.
Wait for the generation to complete. The generated code will be shown in the same editor tab where you have invoked the input field.
All suggested changes are marked with different colors.
If you want to improve the generated code, in the same input field, write a follow-up message with the new requirements and press Enter.
AI Assistant will regenerate the code while taking into account the new specifications.
If you want to regenerate the answer, click Regenerate or press CtrlF5.
Click Accept to insert the generated fragment.
If you want to revert some of the suggested changes, in the gutter, click Revert.
To discard all the suggested changes, click Discard in the input popup.
tip
AI Assistant can also understand prompts as you type directly in the editor, without invoking the code generation input field.
Type your prompt right in the editor where you want to make adjustments and press Tab. Undo the changes by pressing Ctrl0Z.
While PyCharm lets you add type hints via intention actions, AI Assistant further extends this functionality by suggesting types based on the context.
Right-click a function or method definition to open the context menu.
Alternatively, place the caret on it and press AltEnter.
Select AI Actions and then Add Type Annotations.
Type annotations are added to the function definition.
When you rename (ShiftF6) a symbol, AI Assistant suggests name options for it based on its contents.
This feature is enabled by default. To switch it on and off, check the AI Assistant settings.
Press CtrlAlt0S to open settings and then select Tools | AI Assistant.
Use the Provide AI-generated name suggestions checkbox.
Cloud completion powered by AI Assistant can autocomplete single lines, blocks of code, and even entire functions in real time based on the project context. The generated code is similar to how you would write code, matching your style and naming conventions.
The suggestions are shown in the editor as you type.
You can also trigger the code completion by pressing AltShift0\.
tip
If there are no suggestions, the code might already be complete.
To apply the suggestion:
Press Tab to accept the entire suggestion. You can configure a different shortcut for this action.
Press Ctrl0→ to accept a suggestion word by word.
Press End to accept a suggestion line by line.
To reject the suggestion, press Esc. Alternatively, just continue to write your own code or change the caret position either with the arrow keys or by a mouse click.
The cloud completion option is enabled by default. You can configure the way it works in the settings.
Press CtrlAlt0S to open settings and select Editor | General | Inline Completion.
Available options to configure:
Under the Enable cloud completion suggestions checkbox, select the languages that you want to use cloud completion with.
Clear the Enable multi-line suggestions checkbox to leave only single-line suggestions.
To disable this option completely, clear the Enable cloud completion suggestions checkbox on the same settings page or in Settings | Tools | AI Assistant.
You can change the default cloud completion shortcut that you use to accept suggestions.
Hover over the suggestion.
In the popup that appears, click and select the key that you want to use for accepting suggestions, for example, 0→.
To assign your own shortcut, select Custom.
You can also change any code completion shortcuts in the Settings | Keymap anytime.
When PyCharm detects code that produces pre-compilation errors, it suggests a quick-fix directly within the editor.
AI Assistant can suggest more precise fixes applicable to your specific case due to its context awareness.
Place the caret at a highlighted error in the editor. Then click the red light bulb icon or press AltEnter to open the list of suggestions.
Click Fix with AI.
AI Assistant sends the entire file together with related files as context to the LLM to determine which fix would be most suitable in this particular case.
The code is then updated directly in the editor.
Thanks for your feedback!