آموزش PyCharm؛ نصب، تنظیم پایتون و ساخت پروژه هوش مصنوعی

در این آموزش PyCharm را نصب و برای توسعه Python آماده می‌کنیم، Virtual Environment می‌سازیم، Run و Debug و Pytest را یاد می‌گیریم و یک پروژه واقعی متصل به API هوش مصنوعی درواره اجرا می‌کنیم.

Share
آموزش PyCharm؛ نصب، تنظیم پایتون و ساخت پروژه هوش مصنوعی

PyCharm یکی از کامل‌ترین محیط‌های توسعه یا IDE برای برنامه‌نویسی با پایتون است. این ابزار فقط یک ویرایشگر کد نیست؛ بلکه امکاناتی مانند تشخیص خطا، Code Completion، مدیریت Python Interpreter، ساخت Virtual Environment، دیباگ، اجرای تست، ریفکتورینگ، کار با Git، اجرای Jupyter Notebook و مدیریت پروژه‌های Data Science را در یک محیط یکپارچه ارائه می‌دهد.

اگر تازه یادگیری Python را شروع کرده‌اید، PyCharm می‌تواند بسیاری از خطاهای مربوط به مسیر فایل، نصب پکیج و اجرای برنامه را قابل فهم‌تر کند. اگر برنامه‌نویس حرفه‌ای هستید، قابلیت‌هایی مانند Debugger، Refactoring، Test Runner، Navigation و Run Configuration سرعت توسعه و نگهداری پروژه را افزایش می‌دهند.

در این آموزش از نصب PyCharm شروع می‌کنیم، Python Interpreter و Virtual Environment را تنظیم می‌کنیم، روش صحیح نصب پکیج‌ها را یاد می‌گیریم و با امکانات Run، Debug، Refactor و Pytest آشنا می‌شویم. در پایان نیز یک پروژه واقعی می‌سازیم که از داخل PyCharm به API هوش مصنوعی درواره متصل می‌شود.

PyCharm چیست؟

PyCharm یک محیط توسعه یکپارچه برای زبان Python است که توسط JetBrains توسعه داده می‌شود.

محیط توسعه یکپارچه یا IDE مجموعه‌ای از ابزارهای موردنیاز برنامه‌نویس را در یک برنامه جمع می‌کند. در PyCharm می‌توانید:

  • کد Python بنویسید.
  • ساختار پروژه را مدیریت کنید.
  • Python Interpreter انتخاب کنید.
  • Virtual Environment بسازید.
  • پکیج نصب کنید.
  • برنامه را Run کنید.
  • خطاها را با Debugger بررسی کنید.
  • تست‌های خودکار اجرا کنید.
  • کد را Refactor کنید.
  • با Git کار کنید.
  • فایل‌های Jupyter Notebook را باز کنید.
  • پروژه‌های Data Science و Machine Learning توسعه دهید.
  • برنامه‌های Django، Flask و FastAPI بسازید.
  • درخواست‌های API را آزمایش کنید.

مطابق صفحه رسمی PyCharm، این IDE از Python، Jupyter، Git، Conda، Pandas، PyTorch، TensorFlow، Django، Flask و FastAPI پشتیبانی می‌کند. دسترسی به بعضی قابلیت‌ها ممکن است به نسخه فعلی محصول و نوع اشتراک وابسته باشد.

تفاوت IDE با Code Editor چیست؟

یک Code Editor مانند یک ویرایشگر پیشرفته برای نوشتن کد عمل می‌کند. IDE علاوه بر ویرایش کد، ابزارهای توسعه، اجرا، تست و عیب‌یابی را نیز به شکل یکپارچه ارائه می‌دهد.

قابلیتCode Editor سادهPyCharm
ویرایش کددارددارد
Code Completionمحدود یا افزونه‌اییکپارچه
مدیریت Interpreterمعمولاً افزونه‌ایداخلی
Virtual Environmentنیازمند تنظیمیکپارچه
Debuggerمحدود یا افزونه‌ایداخلی
Test Runnerمعمولاً جداگانهداخلی
Refactoringمحدودپیشرفته
مدیریت پکیجبیشتر از Terminalرابط و Terminal
Gitمعمولاً افزونه‌اییکپارچه
Jupyterوابسته به افزونهپشتیبانی داخلی
تحلیل ساختار Pythonمحدودترتخصصی‌تر

این جدول به معنی بهتر بودن مطلق یک ابزار نیست. انتخاب بین PyCharm، VS Code یا ابزارهای دیگر به نوع پروژه، منابع سیستم و ترجیح برنامه‌نویس بستگی دارد.

آیا PyCharm رایگان است؟

PyCharm اکنون به‌صورت یک محصول یکپارچه عرضه می‌شود. طبق مستندات رسمی نصب PyCharm، قابلیت‌های اصلی Python رایگان باقی می‌مانند و هنگام نصب، دوره آزمایشی قابلیت‌های Pro نیز فعال می‌شود. پس از پایان دوره آزمایشی می‌توانید از قابلیت‌های اصلی رایگان استفاده کنید یا برای امکانات پیشرفته اشتراک تهیه کنید.

ویژگی‌ها و سیاست عرضه نرم‌افزار ممکن است تغییر کنند؛ بنابراین برای تصمیم‌گیری درباره امکانات رایگان و Pro، صفحه رسمی نسخه فعلی را بررسی کنید.

PyCharm برای چه کسانی مناسب است؟

PyCharm برای گروه‌های زیر انتخاب مناسبی است:

  • افراد در حال یادگیری Python
  • توسعه‌دهندگان Backend
  • تحلیلگران داده
  • متخصصان Data Science
  • مهندسان Machine Learning
  • توسعه‌دهندگان API
  • کاربران Jupyter Notebook
  • برنامه‌نویسان Django، Flask و FastAPI
  • تیم‌هایی که به Debug و Test یکپارچه نیاز دارند
  • توسعه‌دهندگانی که چند Environment پایتون دارند

اگر فقط می‌خواهید چند فایل کوچک را سریع ویرایش کنید، PyCharm ممکن است نسبت به یک Code Editor سبک‌تر منابع بیشتری مصرف کند. برای پروژه‌های متوسط و بزرگ، ابزارهای یکپارچه آن ارزش بیشتری پیدا می‌کنند.

تفاوت PyCharm با VS Code

معیارPyCharmVS Code
تمرکز اصلیتوسعه Pythonویرایشگر چندزبانه
امکانات Pythonداخلی و عمیقوابسته به افزونه‌ها
مصرف منابعمعمولاً بیشترمعمولاً کمتر
راه‌اندازی اولیه Pythonساده‌ترنیازمند انتخاب افزونه‌ها
Refactoringپیشرفتهمناسب
Debuggerیکپارچهبا افزونه Python
پشتیبانی چند زباندارد، اما Python محور استگسترده
شخصی‌سازیزیادبسیار زیاد
پروژه‌های بزرگ Pythonبسیار مناسبمناسب
یادگیری برای مبتدیمنظم‌ترانعطاف‌پذیرتر

اگر بیشتر کار شما Python، Data Science یا Backend پایتون است، PyCharm انتخاب قدرتمندی است. اگر با چند زبان مختلف کار می‌کنید و محیط سبک‌تر می‌خواهید، VS Code ممکن است مناسب‌تر باشد.

پیش‌نیازهای نصب PyCharm

برای شروع به موارد زیر نیاز دارید:

  • سیستم‌عامل Windows، Linux یا macOS
  • فضای کافی روی دیسک
  • حافظه مناسب برای اجرای IDE و پروژه
  • نسخه پشتیبانی‌شده Python
  • اینترنت برای دانلود PyCharm و پکیج‌ها
  • دسترسی معمولی نصب نرم‌افزار

PyCharm همراه Runtime موردنیاز خود ارائه می‌شود و برای اجرای خود IDE لازم نیست Java را جداگانه نصب کنید. برای اجرای کدهای Python باید Python یا یک Environment سازگار در اختیار داشته باشید.

دانلود PyCharm

PyCharm را فقط از صفحه رسمی دانلود PyCharm یا JetBrains Toolbox دریافت کنید.

دو روش اصلی نصب وجود دارد:

  1. نصب با JetBrains Toolbox
  2. دریافت Installer مستقل

JetBrains Toolbox برای مدیریت نصب، به‌روزرسانی و چند نسخه مختلف محصولات JetBrains مناسب است.

نصب PyCharm با JetBrains Toolbox

مرحله اول: نصب Toolbox

وارد صفحه JetBrains Toolbox شوید و نسخه متناسب با سیستم‌عامل و معماری خود را دریافت کنید.

در Macهای جدید باید بین نسخه Intel و Apple Silicon گزینه صحیح را انتخاب کنید.

مرحله دوم: نصب PyCharm

پس از اجرای Toolbox:

  1. PyCharm را در فهرست محصولات پیدا کنید.
  2. گزینه Install را بزنید.
  3. منتظر دانلود و نصب بمانید.
  4. PyCharm را از داخل Toolbox اجرا کنید.

مزیت Toolbox این است که مدیریت Update، نسخه‌های قبلی و مسیر نصب را ساده‌تر می‌کند.

نصب مستقیم PyCharm در Windows

  1. Installer رسمی با پسوند .exe را دریافت کنید.
  2. فایل را اجرا کنید.
  3. مسیر نصب را انتخاب کنید.
  4. در صورت نیاز Desktop Shortcut بسازید.
  5. گزینه Open Folder as Project را فعال کنید.
  6. در صورت تمایل ارتباط فایل‌های .py با PyCharm را فعال کنید.
  7. نصب را تکمیل کنید.
  8. PyCharm را از Start Menu اجرا کنید.

افزودن Launcher به PATH اختیاری است. این گزینه برای اجرای PyCharm از Terminal کاربرد دارد، اما برای استفاده معمولی ضروری نیست.

نصب PyCharm در macOS

  1. فایل .dmg مناسب معماری دستگاه را دریافت کنید.
  2. فایل را باز کنید.
  3. آیکون PyCharm را به پوشه Applications بکشید.
  4. برنامه را از Applications یا Spotlight اجرا کنید.

برای مشاهده معماری Mac می‌توانید در Terminal اجرا کنید:

uname -m

خروجی arm64 معمولاً نشان‌دهنده Apple Silicon و خروجی x86_64 نشان‌دهنده پردازنده Intel است.

نصب PyCharm در Linux

روش پیشنهادی رسمی استفاده از JetBrains Toolbox است. همچنین می‌توانید آرشیو PyCharm را دانلود و استخراج کنید.

اگر آرشیو در پوشه فعلی قرار دارد:

tar xzf pycharm-*.tar.gz

وارد پوشه bin شوید:

cd pycharm-*/bin

برنامه را اجرا کنید:

./pycharm

نام دقیق پوشه به نسخه دانلودشده بستگی دارد.

در بعضی توزیع‌ها امکان نصب از طریق Package Manager نیز وجود دارد، اما روش Toolbox مدیریت Updateها را ساده‌تر می‌کند.

اجرای اولیه PyCharm

در اولین اجرا ممکن است PyCharm از شما بخواهد تنظیمات نسخه قبلی را Import کنید. اگر اولین نصب است، گزینه شروع بدون Import تنظیمات را انتخاب کنید.

سپس می‌توانید موارد زیر را تنظیم کنید:

  • Theme روشن یا تیره
  • Keymap
  • فونت و اندازه Editor
  • افزونه‌های ضروری
  • ورود به حساب JetBrains
  • تنظیم ارسال آمار استفاده

برای شروع لازم نیست تعداد زیادی Plugin نصب کنید. ابتدا پروژه واقعی خود را اجرا کنید و فقط در صورت نیاز Plugin اضافه کنید.

نصب Python

PyCharm خودش زبان Python نیست. برای اجرای برنامه باید Python Interpreter داشته باشید.

نسخه Python را در Terminal بررسی کنید:

python --version

در بعضی سیستم‌ها:

python3 --version

اگر Python نصب نیست، آن را از وب‌سایت رسمی Python یا از طریق ابزارهایی مانند Miniconda نصب کنید.

در Windows هنگام نصب Python، گزینه افزودن Python به PATH می‌تواند دسترسی از Terminal را ساده‌تر کند. بااین‌حال، PyCharm می‌تواند مسیر Interpreter را مستقیماً دریافت کند و الزاماً به PATH وابسته نیست.

ساخت اولین پروژه در PyCharm

PyCharm را باز کرده و گزینه New Project را انتخاب کنید.

در صفحه ساخت پروژه:

  1. مسیر پروژه را مشخص کنید.
  2. نوع Environment را انتخاب کنید.
  3. Base Interpreter را مشخص کنید.
  4. نام یا مسیر Virtual Environment را بررسی کنید.
  5. گزینه Create را بزنید.

برای مثال:

pycharm-darvareh-project

ساختار اولیه:

pycharm-darvareh-project/
├── .venv/
└── main.py

فایل main.py را بسازید:

def greet(name: str) -> str:
    return f"سلام {name}؛ PyCharm آماده است."


if __name__ == "__main__":
    print(greet("برنامه‌نویس"))

برای اجرا، روی فایل راست‌کلیک کرده و گزینه زیر را بزنید:

Run 'main'

Python Interpreter چیست؟

Python Interpreter برنامه‌ای است که کد Python شما را اجرا می‌کند.

ممکن است چند Interpreter روی سیستم داشته باشید:

Python سیستم
Python نصب‌شده با Miniconda
Python داخل .venv پروژه اول
Python داخل .venv پروژه دوم
Python داخل Conda Environment

اگر Interpreter اشتباه انتخاب شود، ممکن است پکیج نصب‌شده پیدا نشود یا پروژه با نسخه نادرست Python اجرا شود.

مطابق مستندات تنظیم Python Interpreter در PyCharm، هر پروژه باید حداقل یک Interpreter تنظیم‌شده داشته باشد و PyCharm از Virtualenv، Conda، Poetry، uv و چند روش دیگر پشتیبانی می‌کند.

بررسی Interpreter فعال

نام Interpreter معمولاً در Status Bar پایین محیط PyCharm دیده می‌شود.

برای بررسی از تنظیمات:

در Windows و Linux:

File → Settings → Python → Interpreter

در macOS:

PyCharm → Settings → Python → Interpreter

میان‌بر بازکردن Settings در بسیاری از Keymapها:

Ctrl + Alt + S

در کد نیز مسیر Interpreter را بررسی کنید:

import sys

print(sys.executable)
print(sys.version)

اگر از .venv استفاده می‌کنید، مسیر باید به Python داخل همان پوشه اشاره کند.

ساخت Virtual Environment در PyCharm

Virtual Environment محیط جداگانه‌ای برای پکیج‌های یک پروژه است.

برای افزودن Environment جدید:

  1. وارد تنظیمات Python Interpreter شوید.
  2. گزینه Add Interpreter را انتخاب کنید.
  3. Add Local Interpreter را بزنید.
  4. Virtualenv را انتخاب کنید.
  5. گزینه New را انتخاب کنید.
  6. Base Interpreter را تعیین کنید.
  7. مسیر Environment را روی .venv قرار دهید.
  8. تنظیمات را تأیید کنید.

مسیر معمول در Windows:

PROJECT_PATH\.venv\Scripts\python.exe

مسیر معمول در Linux و macOS:

PROJECT_PATH/.venv/bin/python

پوشه .venv را داخل Git قرار ندهید:

.venv/

استفاده از Conda Environment در PyCharm

اگر Anaconda یا Miniconda نصب دارید:

  1. وارد Python Interpreter شوید.
  2. Add Interpreter را انتخاب کنید.
  3. Add Local Interpreter را بزنید.
  4. Conda را انتخاب کنید.
  5. Environment جدید بسازید یا Existing Environment را انتخاب کنید.
  6. در صورت نیاز مسیر فایل اجرایی Conda را مشخص کنید.
  7. Python Environment مناسب را انتخاب کنید.

برای مشاهده Environmentها در Terminal:

conda env list

مسیر Environment انتخاب‌شده باید با محیط موردنظر پروژه هماهنگ باشد.

نصب پکیج در PyCharm

دو روش اصلی برای نصب پکیج وجود دارد.

نصب از Terminal

Terminal داخلی PyCharm را باز کنید:

View → Tool Windows → Terminal

سپس:

python -m pip install requests

استفاده از python -m pip کمک می‌کند pip مربوط به Interpreter فعال اجرا شود.

برای بررسی:

python -m pip --version

نصب از پنجره Python Interpreter

در صفحه Python Interpreter می‌توانید:

  • پکیج‌های نصب‌شده را ببینید.
  • نام پکیج را جست‌وجو کنید.
  • نسخه آن را بررسی کنید.
  • پکیج جدید نصب کنید.
  • بعضی پکیج‌ها را Update یا Uninstall کنید.

برای پروژه‌های حرفه‌ای، علاوه بر نصب پکیج باید وابستگی‌ها را در فایل پروژه ثبت کنید.

ساخت requirements.txt

در ریشه پروژه فایل requirements.txt را بسازید:

requests
python-dotenv
pytest

نصب وابستگی‌ها:

python -m pip install -r requirements.txt

بعد از تست پروژه می‌توانید نسخه‌های مشخص را ثبت کنید:

requests>=2.32,<3
python-dotenv>=1.0,<2
pytest>=8,<10

این نسخه‌ها نمونه‌اند. بازه نسخه باید بر اساس تست واقعی و سازگاری پروژه تعیین شود.

برای مشاهده پکیج‌های محیط:

python -m pip list

برای تولید فهرست کامل:

python -m pip freeze > requirements-lock.txt

خروجی pip freeze ممکن است شامل وابستگی‌های غیرمستقیم زیادی باشد. برای پروژه قابل نگهداری، فایل وابستگی مستقیم و Lock یا Snapshot کامل را با هدف مشخص مدیریت کنید.

آشنایی با بخش‌های اصلی PyCharm

Project

ساختار فایل‌ها و پوشه‌های پروژه را نشان می‌دهد.

Editor

محل نوشتن و ویرایش کد است.

Terminal

برای اجرای دستورهای Python، pip، Git و ابزارهای پروژه استفاده می‌شود.

Run

خروجی اجرای برنامه را نمایش می‌دهد.

Debug

متغیرها، Call Stack، Breakpointها و روند اجرای برنامه را نشان می‌دهد.

Problems

بعضی خطاها و هشدارهای شناسایی‌شده را نمایش می‌دهد.

Python Packages

برای مشاهده و مدیریت پکیج‌ها کاربرد دارد.

Git

تغییرات فایل‌ها، Branchها، Commitها و History را مدیریت می‌کند.

Code Completion در PyCharm

PyCharm هنگام تایپ کد، نام متغیرها، توابع، کلاس‌ها و پارامترها را پیشنهاد می‌دهد.

برای مثال:

from pathlib import Path

project_path = Path.cwd()
project_path.

بعد از نقطه، متدهای قابل استفاده نمایش داده می‌شوند.

استفاده از Type Hint کیفیت پیشنهادها و تحلیل کد را بهتر می‌کند:

def calculate_total(
    prices: list[float],
) -> float:
    return sum(prices)

در پروژه‌های بزرگ، Type Hint فقط برای ظاهر کد نیست؛ بلکه خطاهای احتمالی را زودتر آشکار می‌کند.

PyCharm برای جابه‌جایی سریع بین فایل‌ها و تعریف‌ها ابزارهای مختلفی دارد.

عملکردهای مهم:

  • رفتن به تعریف تابع یا کلاس
  • پیداکردن تمام محل‌های استفاده
  • جست‌وجوی فایل
  • جست‌وجوی Symbol
  • مشاهده ساختار فایل
  • بازگشت به محل قبلی
  • جست‌وجو در کل پروژه

برای رفتن به تعریف، معمولاً می‌توانید با نگه‌داشتن Ctrl و کلیک روی نام تابع یا کلاس عمل کنید. در macOS ممکن است کلید Command استفاده شود.

این قابلیت برای بررسی پروژه‌های چندفایلی بسیار مفید است.

Refactoring در PyCharm

Refactoring یعنی تغییر ساختار کد بدون تغییر رفتار مورد انتظار آن.

یکی از ساده‌ترین نمونه‌ها Rename است. اگر نام تابع را فقط با Search and Replace تغییر دهید، ممکن است متن‌ها یا نام‌های نامرتبط نیز تغییر کنند. ابزار Rename در PyCharm ساختار کد را تحلیل و استفاده‌های مرتبط را پیدا می‌کند.

نمونه Refactorها:

  • Rename متغیر، تابع یا کلاس
  • Extract Method
  • Extract Variable
  • Move فایل یا کلاس
  • تغییر Signature تابع
  • Inline Variable
  • Safe Delete

قبل از Refactor گسترده:

  1. تست‌ها را اجرا کنید.
  2. تغییرات Git را Commit کنید.
  3. Preview تغییرات را ببینید.
  4. بعد از Refactor دوباره تست کنید.

فرمت‌کردن کد

برای Reformat Code می‌توانید از منوی Code استفاده کنید:

Code → Reformat Code

PyCharm فاصله‌گذاری، Indentation و بخشی از قالب کد را بر اساس تنظیمات پروژه اصلاح می‌کند.

فرمت‌شدن کد به معنی صحیح‌بودن منطق برنامه نیست. همچنان باید تست و Code Review انجام شود.

اجرای برنامه در PyCharm

ساده‌ترین روش:

  1. فایل Python را باز کنید.
  2. روی آیکون سبز کنار تابع main یا بالای فایل کلیک کنید.
  3. Run را انتخاب کنید.

PyCharm یک Run Configuration می‌سازد.

خروجی در پنجره Run نمایش داده می‌شود.

Run Configuration چیست؟

Run Configuration مشخص می‌کند برنامه چگونه اجرا شود.

تنظیمات مهم:

  • Script path
  • Module name
  • Parameters
  • Python Interpreter
  • Working directory
  • Environment variables
  • مسیر فایل‌های ورودی
  • گزینه‌های اجرا

برای بازکردن تنظیمات:

Run → Edit Configurations

اگر برنامه در Terminal کار می‌کند اما در PyCharm خطا می‌دهد، Working Directory و Interpreter دو مورد مهم برای بررسی هستند.

تفاوت Script path و Module name

برای اجرای مستقیم فایل:

Script path: /path/to/project/src/main.py

برای اجرای ماژول:

Module name: src.main

در پروژه‌های پکیج‌شده، اجرای Module می‌تواند Importها را قابل پیش‌بینی‌تر کند:

python -m src.main

در PyCharm نیز می‌توانید همین مدل اجرا را در Run Configuration تنظیم کنید.

تنظیم Working Directory

فرض کنید برنامه فایلی را با این مسیر می‌خواند:

from pathlib import Path

config_path = Path("config/settings.json")

این مسیر نسبت به Working Directory محاسبه می‌شود، نه لزوماً نسبت به محل فایل Python.

برای بررسی:

from pathlib import Path

print(Path.cwd())

در Run Configuration، Working Directory را روی ریشه پروژه قرار دهید.

روش مطمئن‌تر برای فایل‌های متعلق به ماژول:

from pathlib import Path

project_root = Path(__file__).resolve().parent.parent
config_path = project_root / "config" / "settings.json"

Environment Variable در PyCharm

برای اطلاعات حساس مانند API Key نباید مقدار را داخل کد بنویسید.

روش‌های متداول:

  • تعریف در Run Configuration
  • تعریف در Environment سیستم
  • استفاده از فایل .env
  • استفاده از Secret Manager در محیط Production

در این آموزش از .env و python-dotenv استفاده می‌کنیم.

فایل .env:

DARVAREH_API_KEY=YOUR_DARVAREH_API_KEY
DARVAREH_MODEL_ID=YOUR_MODEL_ID

فایل .gitignore:

.env
.venv/
__pycache__/
*.pyc
.pytest_cache/
.idea/workspace.xml

کل پوشه .idea همیشه نباید بدون بررسی حذف شود. بعضی تیم‌ها تنظیمات قابل اشتراک پروژه را ثبت می‌کنند و فایل‌های شخصی مانند workspace.xml را نادیده می‌گیرند. سیاست Git باید در سطح تیم مشخص شود.

Debug در PyCharm چیست؟

Debugger اجازه می‌دهد برنامه را مرحله‌به‌مرحله اجرا و وضعیت متغیرها را در هر نقطه مشاهده کنید.

به‌جای اضافه‌کردن تعداد زیادی print() می‌توانید:

  • اجرای برنامه را متوقف کنید.
  • مقدار متغیرها را ببینید.
  • وارد تابع شوید.
  • از تابع خارج شوید.
  • Expression ارزیابی کنید.
  • مسیر رسیدن به خطا را بررسی کنید.

ساخت Breakpoint

برای ایجاد Breakpoint روی حاشیه سمت چپ شماره خط کلیک کنید. یک نقطه قرمز ظاهر می‌شود.

سپس به‌جای Run، گزینه Debug را انتخاب کنید.

وقتی اجرای برنامه به آن خط برسد، متوقف می‌شود.

فرمان‌های مهم Debugger

فرمانعملکرد
Resume Programادامه اجرا تا Breakpoint بعدی
Step Overاجرای خط فعلی بدون ورود به تابع
Step Intoورود به تابع فراخوانی‌شده
Step Outخروج از تابع فعلی
Run to Cursorاجرا تا خط انتخاب‌شده
Evaluate Expressionمحاسبه Expression در وضعیت فعلی
Stopتوقف برنامه

برای پیدا‌کردن خطای منطقی، مقدار ورودی و خروجی هر مرحله را بررسی کنید؛ فقط به آخرین خط Exception نگاه نکنید.

Conditional Breakpoint

گاهی یک حلقه هزار بار اجرا می‌شود و خطا فقط برای مقدار مشخصی رخ می‌دهد.

مثال:

for order in orders:
    process_order(order)

می‌توانید Breakpoint شرطی تنظیم کنید:

order["status"] == "invalid"

Debugger فقط هنگام برقرار بودن شرط متوقف می‌شود. این روش از توقف بی‌دلیل در تمام تکرارها جلوگیری می‌کند.

Exception Breakpoint

PyCharm می‌تواند هنگام رخ‌دادن نوع خاصی از Exception متوقف شود؛ حتی اگر Exception بعداً مدیریت شده باشد.

این قابلیت برای بررسی خطاهایی مانند موارد زیر مفید است:

ValueError
KeyError
TypeError
requests.Timeout

استفاده افراطی از Exception Breakpoint ممکن است توقف‌های زیادی ایجاد کند. آن را بر اساس خطای مورد بررسی تنظیم کنید.

تست با Pytest در PyCharm

تست خودکار کمک می‌کند بعد از تغییر یا Refactor متوجه شکسته‌شدن رفتار برنامه شوید.

نصب Pytest:

python -m pip install pytest

ساختار پیشنهادی:

project/
├── src/
│   ├── __init__.py
│   └── calculator.py
└── tests/
    └── test_calculator.py

فایل src/calculator.py:

def conversion_rate(
    orders: int,
    sessions: int,
) -> float:
    if sessions <= 0:
        raise ValueError(
            "sessions must be greater than zero"
        )

    if orders < 0:
        raise ValueError(
            "orders cannot be negative"
        )

    return orders / sessions

فایل tests/test_calculator.py:

import pytest

from src.calculator import conversion_rate


def test_conversion_rate() -> None:
    result = conversion_rate(
        orders=25,
        sessions=500,
    )

    assert result == 0.05


def test_zero_sessions_raises_error() -> None:
    with pytest.raises(
        ValueError,
        match="sessions must be greater than zero",
    ):
        conversion_rate(
            orders=10,
            sessions=0,
        )


def test_negative_orders_raises_error() -> None:
    with pytest.raises(
        ValueError,
        match="orders cannot be negative",
    ):
        conversion_rate(
            orders=-1,
            sessions=100,
        )

اجرای تست از Terminal:

python -m pytest

اجرای دقیق‌تر:

python -m pytest -q

در PyCharm می‌توانید روی پوشه tests یا فایل تست راست‌کلیک و Run Pytest را انتخاب کنید. جزئیات این قابلیت در مستندات Pytest در PyCharm توضیح داده شده است.

پروژه عملی: ساخت دستیار خط فرمان هوش مصنوعی در PyCharm

اکنون یک پروژه ساختاریافته می‌سازیم که سؤال کاربر را دریافت و از طریق API درواره به مدل هوش مصنوعی ارسال می‌کند.

اهداف پروژه:

  • ساختار چندفایلی
  • استفاده از Type Hint
  • نگهداری تنظیمات در .env
  • مدیریت Timeout و خطای HTTP
  • قابلیت Debug
  • قابلیت Unit Test
  • امکان تغییر Model ID بدون تغییر کد

ساختار پروژه

pycharm-darvareh-assistant/
├── .env
├── .gitignore
├── requirements.txt
├── src/
│   ├── __init__.py
│   ├── config.py
│   ├── darvareh_client.py
│   └── main.py
└── tests/
    ├── __init__.py
    └── test_darvareh_client.py

ساخت Virtual Environment

هنگام ایجاد پروژه، گزینه New Virtualenv را انتخاب کنید و نام پوشه را .venv قرار دهید.

اگر پروژه از قبل ساخته شده است، در Terminal اجرا کنید:

python -m venv .venv

سپس Interpreter مربوط به .venv را از تنظیمات PyCharm انتخاب کنید.

نصب وابستگی‌ها

محتوای requirements.txt:

requests>=2.32,<3
python-dotenv>=1.0,<2
pytest>=8,<10

نصب:

python -m pip install -r requirements.txt

تنظیم .gitignore

.env
.venv/
__pycache__/
*.pyc
.pytest_cache/
.coverage
htmlcov/
.idea/workspace.xml

ساخت فایل .env

DARVAREH_API_KEY=YOUR_DARVAREH_API_KEY
DARVAREH_MODEL_ID=YOUR_MODEL_ID
DARVAREH_BASE_URL=https://api.darvareh.ir/v1

برای استفاده واقعی، در درواره ثبت‌نام کرده و API Key بسازید. Model ID را از صفحه مدل‌ها و قیمت‌های درواره بردارید.

ساخت کلاس تنظیمات

محتوای src/config.py:

from dataclasses import dataclass
import os

from dotenv import load_dotenv


@dataclass(frozen=True)
class Settings:
    api_key: str
    model_id: str
    base_url: str
    timeout_seconds: int = 60

    @property
    def chat_completions_url(self) -> str:
        return (
            f"{self.base_url.rstrip('/')}"
            "/chat/completions"
        )


def load_settings() -> Settings:
    load_dotenv()

    api_key = os.getenv("DARVAREH_API_KEY", "").strip()
    model_id = os.getenv("DARVAREH_MODEL_ID", "").strip()
    base_url = os.getenv(
        "DARVAREH_BASE_URL",
        "https://api.darvareh.ir/v1",
    ).strip()

    if not api_key:
        raise RuntimeError(
            "DARVAREH_API_KEY is not configured."
        )

    if not model_id:
        raise RuntimeError(
            "DARVAREH_MODEL_ID is not configured."
        )

    if not base_url.startswith("https://"):
        raise RuntimeError(
            "DARVAREH_BASE_URL must use HTTPS."
        )

    return Settings(
        api_key=api_key,
        model_id=model_id,
        base_url=base_url,
    )

استفاده از frozen=True مانع تغییر ناخواسته تنظیمات پس از ساخته‌شدن شیء می‌شود.

ساخت Client درواره

محتوای src/darvareh_client.py:

from typing import Any

import requests

from src.config import Settings


class DarvarehAPIError(RuntimeError):
    pass


class DarvarehClient:
    def __init__(
        self,
        settings: Settings,
        session: requests.Session | None = None,
    ) -> None:
        self.settings = settings
        self.session = session or requests.Session()

    def ask(
        self,
        prompt: str,
        system_prompt: str | None = None,
    ) -> str:
        cleaned_prompt = prompt.strip()

        if not cleaned_prompt:
            raise ValueError(
                "Prompt cannot be empty."
            )

        messages: list[dict[str, str]] = []

        if system_prompt:
            messages.append(
                {
                    "role": "system",
                    "content": system_prompt.strip(),
                }
            )

        messages.append(
            {
                "role": "user",
                "content": cleaned_prompt,
            }
        )

        payload: dict[str, Any] = {
            "model": self.settings.model_id,
            "messages": messages,
            "temperature": 0.3,
        }

        try:
            response = self.session.post(
                self.settings.chat_completions_url,
                headers={
                    "Authorization": (
                        f"Bearer {self.settings.api_key}"
                    ),
                    "Content-Type": "application/json",
                },
                json=payload,
                timeout=self.settings.timeout_seconds,
            )

            response.raise_for_status()

        except requests.Timeout as error:
            raise DarvarehAPIError(
                "The API request timed out."
            ) from error

        except requests.ConnectionError as error:
            raise DarvarehAPIError(
                "Could not connect to the API."
            ) from error

        except requests.HTTPError as error:
            status_code = (
                error.response.status_code
                if error.response is not None
                else "unknown"
            )

            response_preview = (
                error.response.text[:300]
                if error.response is not None
                else ""
            )

            raise DarvarehAPIError(
                "The API returned an error: "
                f"{status_code} - {response_preview}"
            ) from error

        try:
            body = response.json()
            content = body["choices"][0]["message"]["content"]

        except (
            ValueError,
            KeyError,
            IndexError,
            TypeError,
        ) as error:
            raise DarvarehAPIError(
                "The API response format was unexpected."
            ) from error

        if not isinstance(content, str):
            raise DarvarehAPIError(
                "The response content is not text."
            )

        return content.strip()

در پیام خطا نباید API Key، Authorization Header یا کل Payload لاگ شود.

ساخت فایل اصلی

محتوای src/main.py:

from src.config import load_settings
from src.darvareh_client import (
    DarvarehAPIError,
    DarvarehClient,
)


def main() -> None:
    try:
        settings = load_settings()
    except RuntimeError as error:
        print(f"Configuration error: {error}")
        return

    client = DarvarehClient(settings)

    print("دستیار هوش مصنوعی آماده است.")
    print("برای خروج عبارت exit را وارد کنید.")

    while True:
        try:
            user_input = input("\nشما: ").strip()
        except (EOFError, KeyboardInterrupt):
            print("\nخروج از برنامه.")
            break

        if user_input.lower() in {
            "exit",
            "quit",
            "خروج",
        }:
            print("خروج از برنامه.")
            break

        if not user_input:
            print("لطفاً یک سؤال وارد کنید.")
            continue

        try:
            answer = client.ask(
                prompt=user_input,
                system_prompt=(
                    "پاسخ را دقیق، روشن و به زبان فارسی "
                    "ارائه کن. اگر اطلاعات کافی نیست، "
                    "محدودیت را صریح بیان کن."
                ),
            )
        except ValueError as error:
            print(f"Input error: {error}")
            continue
        except DarvarehAPIError as error:
            print(f"API error: {error}")
            continue

        print(f"\nدستیار: {answer}")


if __name__ == "__main__":
    main()

ساخت Run Configuration پروژه

وارد مسیر زیر شوید:

Run → Edit Configurations

یک Python Configuration بسازید و تنظیم کنید:

Run kind: Module name
Module name: src.main
Working directory: PROJECT_ROOT
Python Interpreter: .venv

اکنون با Run کردن Configuration، برنامه مانند دستور زیر اجرا می‌شود:

python -m src.main

اجرای Module برای ساختار پکیج‌شده معمولاً Importهای قابل پیش‌بینی‌تری نسبت به اجرای مستقیم فایل داخلی ایجاد می‌کند.

دیباگ پروژه

در متد ask روی خط زیر Breakpoint بگذارید:

payload: dict[str, Any] = {

سپس برنامه را با Debug اجرا کنید.

در پنجره Debug بررسی کنید:

  • مقدار cleaned_prompt
  • مقدار messages
  • Model ID
  • آدرس Endpoint
  • مقدار Timeout

مقدار کامل api_key را در Screenshot، گزارش خطا یا جلسه آموزشی نمایش ندهید.

Breakpoint دیگری پس از دریافت پاسخ قرار دهید:

body = response.json()

ساختار پاسخ را بررسی کنید، اما پیش از اشتراک‌گذاری خروجی مطمئن شوید داده حساس یا محتوای خصوصی در آن وجود ندارد.

نوشتن Unit Test برای Client

محتوای tests/test_darvareh_client.py:

from unittest.mock import Mock

import pytest
import requests

from src.config import Settings
from src.darvareh_client import (
    DarvarehAPIError,
    DarvarehClient,
)


@pytest.fixture
def settings() -> Settings:
    return Settings(
        api_key="test-key",
        model_id="test-model",
        base_url="https://api.darvareh.ir/v1",
        timeout_seconds=10,
    )


def test_ask_returns_text(
    settings: Settings,
) -> None:
    fake_response = Mock()
    fake_response.raise_for_status.return_value = None
    fake_response.json.return_value = {
        "choices": [
            {
                "message": {
                    "content": "پاسخ آزمایشی"
                }
            }
        ]
    }

    fake_session = Mock()
    fake_session.post.return_value = fake_response

    client = DarvarehClient(
        settings=settings,
        session=fake_session,
    )

    result = client.ask("سلام")

    assert result == "پاسخ آزمایشی"

    fake_session.post.assert_called_once()

    call_kwargs = fake_session.post.call_args.kwargs

    assert call_kwargs["timeout"] == 10
    assert (
        call_kwargs["json"]["model"]
        == "test-model"
    )


def test_empty_prompt_raises_value_error(
    settings: Settings,
) -> None:
    client = DarvarehClient(settings=settings)

    with pytest.raises(
        ValueError,
        match="Prompt cannot be empty",
    ):
        client.ask("   ")


def test_timeout_is_converted_to_api_error(
    settings: Settings,
) -> None:
    fake_session = Mock()
    fake_session.post.side_effect = requests.Timeout()

    client = DarvarehClient(
        settings=settings,
        session=fake_session,
    )

    with pytest.raises(
        DarvarehAPIError,
        match="timed out",
    ):
        client.ask("سلام")


def test_invalid_response_raises_api_error(
    settings: Settings,
) -> None:
    fake_response = Mock()
    fake_response.raise_for_status.return_value = None
    fake_response.json.return_value = {
        "unexpected": "response"
    }

    fake_session = Mock()
    fake_session.post.return_value = fake_response

    client = DarvarehClient(
        settings=settings,
        session=fake_session,
    )

    with pytest.raises(
        DarvarehAPIError,
        match="format was unexpected",
    ):
        client.ask("سلام")

در این تست‌ها درخواست واقعی به API ارسال نمی‌شود. یک Session آزمایشی یا Mock جایگزین اتصال شبکه شده است.

این روش چند مزیت دارد:

  • تست سریع اجرا می‌شود.
  • هزینه API ایجاد نمی‌کند.
  • به اینترنت وابسته نیست.
  • پاسخ موفق و خطا قابل شبیه‌سازی است.
  • API Key واقعی استفاده نمی‌شود.

اجرای تست‌ها

از Terminal:

python -m pytest -q

یا در PyCharm:

  1. روی پوشه tests راست‌کلیک کنید.
  2. Run Python tests in tests را انتخاب کنید.
  3. نتیجه را در Test Runner ببینید.
  4. روی تست ناموفق کلیک کنید تا خط مربوط باز شود.

تست دستی اتصال واقعی

بعد از موفقیت Unit Testها، برنامه را با API Key آزمایشی یا محیط توسعه اجرا کنید:

python -m src.main

نمونه سؤال:

سه کاربرد عملی پردازش زبان طبیعی در فروشگاه اینترنتی را توضیح بده.

بعد از دریافت پاسخ، موارد زیر را بررسی کنید:

  • پاسخ خالی نباشد.
  • متن با موضوع سؤال ارتباط داشته باشد.
  • خطای HTTP مدیریت شود.
  • Timeout برنامه را متوقف نکند.
  • API Key در خروجی ظاهر نشود.
  • Model ID صحیح استفاده شود.
  • مصرف در داشبورد درواره ثبت شود.

استفاده از Jupyter Notebook در PyCharm

در نسخه‌های جدید PyCharm، پشتیبانی Jupyter در قابلیت‌های اصلی محصول قرار گرفته است. برای استفاده:

  1. یک فایل با پسوند .ipynb بسازید یا باز کنید.
  2. Kernel یا Interpreter مناسب را انتخاب کنید.
  3. سلول Code ایجاد کنید.
  4. سلول را اجرا کنید.
  5. خروجی را داخل محیط PyCharm ببینید.

نمونه سلول:

import sys
import pandas as pd

print(sys.executable)
print(pd.__version__)

اگر Import با خطا مواجه شد، Kernel انتخاب‌شده را با Environment محل نصب پکیج مقایسه کنید.

برای پروژه‌های جدی بهتر است:

  • تحلیل اکتشافی داخل Notebook باشد.
  • منطق تکرارشونده به فایل‌های .py منتقل شود.
  • تست‌ها خارج از Notebook نوشته شوند.
  • API Key داخل سلول قرار نگیرد.
  • خروجی حساس پیش از انتشار پاک شود.

استفاده از Git در PyCharm

برای فعال‌کردن Version Control:

VCS → Enable Version Control Integration

Git را انتخاب کنید.

فایل‌های مناسب برای Commit:

src/
tests/
requirements.txt
README.md
.gitignore

فایل‌هایی که نباید Commit شوند:

.env
.venv/
__pycache__/
.pytest_cache/

پیش از Commit، پنجره تغییرات را بررسی کنید و مطمئن شوید Secret یا خروجی حساس در فایل‌ها وجود ندارد.

یک Commit باید یک تغییر مشخص و قابل توضیح داشته باشد. از Commit کردن هم‌زمان تغییرات نامرتبط خودداری کنید.

میان‌برهای کاربردی PyCharm

میان‌برها به سیستم‌عامل و Keymap وابسته‌اند، اما موارد رایج شامل این عملکردها هستند:

عملکردمیان‌بر رایج Windows/Linux
بازکردن SettingsCtrl + Alt + S
جست‌وجوی همه‌چیزدو بار Shift
رفتن به فایلCtrl + Shift + N
جست‌وجوی متن در پروژهCtrl + Shift + F
اجرای برنامهShift + F10
اجرای DebugShift + F9
RefactorCtrl + Alt + Shift + T
RenameShift + F6
Reformat CodeCtrl + Alt + L
Quick FixAlt + Enter
رفتن به تعریفCtrl + B
مشاهده استفاده‌هاAlt + F7

در macOS ترکیب کلیدها متفاوت است. از منوی Help و بخش Keyboard Shortcuts برای مشاهده Keymap فعال استفاده کنید.

خطاهای رایج PyCharm و راه‌حل آن‌ها

خطای No Python Interpreter configured

این خطا یعنی پروژه Interpreter ندارد.

راه‌حل:

Settings → Python → Interpreter → Add Interpreter

یک Virtualenv جدید بسازید یا Interpreter موجود را انتخاب کنید.

پکیج نصب شده اما Import نمی‌شود

مسیر Interpreter را بررسی کنید:

import sys
print(sys.executable)

در Terminal:

python -m pip --version
python -m pip show package-name

اگر مسیرها متفاوت‌اند، Terminal و Run Configuration از Environment یکسان استفاده نمی‌کنند.

PyCharm نام پکیج را قرمز نشان می‌دهد اما برنامه اجرا می‌شود

ممکن است Indexing کامل نشده باشد یا Interpreter تنظیم‌شده با Environment اجرای خارجی متفاوت باشد.

موارد زیر را بررسی کنید:

  • Interpreter پروژه
  • وضعیت Indexing
  • مسیر Source Root
  • ساختار Import
  • نصب پکیج در Environment صحیح

بلافاصله Cache را حذف نکنید. ابتدا علت‌های ساده‌تر را بررسی کنید.

خطای ModuleNotFoundError برای ماژول داخلی

به‌جای اجرای مستقیم فایل داخلی:

python src/main.py

از اجرای Module استفاده کنید:

python -m src.main

همچنین وجود __init__.py و Working Directory صحیح را بررسی کنید.

فایل .env خوانده نمی‌شود

اطمینان پیدا کنید Working Directory روی ریشه پروژه است.

برای بررسی موقت:

from pathlib import Path

print(Path.cwd())
print((Path.cwd() / ".env").exists())

مقدار API Key را چاپ نکنید.

Run کار می‌کند اما Debug کار نمی‌کند

موارد زیر را بررسی کنید:

  • همان Run Configuration انتخاب شده باشد.
  • Interpreter صحیح باشد.
  • Breakpoint فعال باشد.
  • برنامه به خط Breakpoint برسد.
  • کد بهینه‌سازی یا اجرای فرایند دیگری نداشته باشد.
  • فایل ذخیره شده باشد.

PyCharm کند شده است

دلایل احتمالی:

  • پروژه پوشه‌های بسیار بزرگ دارد.
  • .venv یا داده‌های حجیم Index می‌شوند.
  • Pluginهای غیرضروری فعال هستند.
  • حافظه سیستم محدود است.
  • چند پروژه سنگین هم‌زمان باز هستند.
  • فایل Log یا Dataset بسیار بزرگ داخل پروژه قرار دارد.

پوشه‌هایی مانند Dataset حجیم، Cache و خروجی Build را در صورت مناسب‌بودن به‌عنوان Excluded مشخص کنید. فایل‌های کد و وابستگی‌های موردنیاز تحلیل را بدون دلیل Exclude نکنید.

Terminal محیط اشتباه را فعال می‌کند

Terminal جدید باز کنید و اجرا کنید:

python -c "import sys; print(sys.executable)"

اگر مسیر صحیح نیست:

  • Interpreter پروژه را بررسی کنید.
  • Terminal قدیمی را ببندید.
  • Terminal جدید بسازید.
  • تنظیم Shell Activation را بررسی کنید.
  • Run Configuration را جداگانه کنترل کنید.

تست‌ها Import Error دارند

تست را از ریشه پروژه اجرا کنید:

python -m pytest

ساختار پکیج، فایل‌های __init__.py و Interpreter تست را بررسی کنید.

برای رفع سریع، مسیرهای تصادفی را داخل sys.path اضافه نکنید؛ ابتدا ساختار واقعی پروژه را اصلاح کنید.

بهترین روش‌های استفاده از PyCharm

برای هر پروژه Environment جداگانه بسازید

پکیج‌های پروژه‌ها را داخل Python سراسری نصب نکنید.

Interpreter را پیش از عیب‌یابی بررسی کنید

بخش بزرگی از خطاهای Import از انتخاب Interpreter نادرست ناشی می‌شود.

پروژه را از ریشه باز کنید

بازکردن فقط پوشه src می‌تواند Working Directory و مسیر Importها را تغییر دهد.

از Run Configuration نام‌دار استفاده کنید

نام‌های روشن:

Run CLI Assistant
Run API Server
Run Unit Tests
Generate Report

Secretها را در کد قرار ندهید

API Key، Token و اطلاعات اتصال را در .env یا Secret Manager نگه دارید.

Debugger را جایگزین Printهای زیاد کنید

برای بررسی جریان برنامه، Breakpoint و Evaluate Expression معمولاً اطلاعات دقیق‌تری ارائه می‌دهند.

قبل و بعد از Refactor تست اجرا کنید

بدون تست، اطمینان از ثابت‌ماندن رفتار برنامه دشوار است.

Warningها را بدون بررسی خاموش نکنید

هشدار ممکن است یک خطای بالقوه، Import اشتباه یا ناسازگاری Type را نشان دهد.

فقط Pluginهای ضروری را نصب کنید

Plugin زیاد می‌تواند مصرف منابع، زمان Indexing و احتمال ناسازگاری را افزایش دهد.

Prompt و خروجی مدل را اعتبارسنجی کنید

کدی که مدل هوش مصنوعی تولید می‌کند باید مانند کد نوشته‌شده توسط انسان بررسی، تست و Review شود.

هزینه درخواست‌های API را کنترل کنید

در توسعه:

  • Prompt کوتاه و هدفمند بنویسید.
  • از ارسال چندباره داده تکراری خودداری کنید.
  • Timeout تعیین کنید.
  • Retry را محدود کنید.
  • پاسخ‌های آزمایشی را Mock کنید.
  • Unit Test را به API واقعی وابسته نکنید.
  • مدل متناسب با کار را انتخاب کنید.

چک‌لیست پروژه آماده در PyCharm

پیش از شروع توسعه جدی بررسی کنید:

  • PyCharm از منبع رسمی نصب شده است.
  • Python نسخه مناسب نصب شده است.
  • Interpreter پروژه مشخص است.
  • Virtual Environment جداگانه ساخته شده است.
  • مسیر Python با sys.executable بررسی شده است.
  • وابستگی‌ها در requirements.txt ثبت شده‌اند.
  • فایل .env داخل Git نیست.
  • Working Directory صحیح است.
  • Run Configuration نام‌دار ساخته شده است.
  • تست‌ها از داخل PyCharm و Terminal اجرا می‌شوند.
  • Debugger روی کد اصلی کار می‌کند.
  • ساختار src و tests از هم جدا است.
  • API Key در کد، Log یا Screenshot دیده نمی‌شود.
  • خطاهای Timeout و HTTP مدیریت می‌شوند.
  • Unit Testها درخواست واقعی API ارسال نمی‌کنند.
  • تغییرات پیش از Commit بازبینی می‌شوند.

پرسش‌های متداول

آیا PyCharm برای مبتدیان مناسب است؟

بله. ساخت پروژه، انتخاب Interpreter، نمایش خطا و اجرای برنامه در PyCharm برای مبتدیان قابل فهم است. بااین‌حال، یادگیری دستورات پایه Terminal و pip همچنان ضروری است.

برای PyCharm باید Python را جداگانه نصب کنیم؟

بله. PyCharm IDE است و برای اجرای کد به Python Interpreter نیاز دارد. می‌توانید از Python رسمی، Virtualenv یا Conda Environment استفاده کنید.

PyCharm رایگان بهتر است یا نسخه Pro؟

برای یادگیری Python، اجرای پروژه‌های معمولی، Jupyter و بسیاری از کارهای روزمره، قابلیت‌های اصلی کافی هستند. اگر به امکانات پیشرفته خاص نیاز دارید، فهرست به‌روز قابلیت‌های Pro را در وب‌سایت رسمی بررسی کنید.

آیا PyCharm از Jupyter Notebook پشتیبانی می‌کند؟

بله. نسخه‌های جدید PyCharm از فایل‌های .ipynb پشتیبانی می‌کنند. برای اجرای صحیح سلول‌ها باید Kernel یا Interpreter مناسب انتخاب شود.

آیا می‌توان Anaconda را به PyCharm متصل کرد؟

بله. از بخش Add Interpreter گزینه Conda را انتخاب کرده و Environment موجود یا جدید را تنظیم کنید.

چرا PyCharm پکیج نصب‌شده را نمی‌شناسد؟

احتمالاً پکیج در Environment دیگری نصب شده است. مسیر sys.executable و خروجی python -m pip --version را مقایسه کنید.

آیا PyCharm برای Machine Learning مناسب است؟

بله. PyCharm از کتابخانه‌هایی مانند Pandas، Scikit-learn، PyTorch و TensorFlow پشتیبانی می‌کند. برای آزمایش تعاملی نیز می‌توانید از Jupyter استفاده کنید.

آیا می‌توان در PyCharm به API هوش مصنوعی متصل شد؟

بله. PyCharm فقط محیط توسعه است و پروژه Python شما می‌تواند با requests یا SDK سازگار به API متصل شود. Base URL درواره:

https://api.darvareh.ir/v1

Endpoint استفاده‌شده در این آموزش:

https://api.darvareh.ir/v1/chat/completions

چگونه مدل مناسب درواره را انتخاب کنیم؟

نوع کار، کیفیت، سرعت، Context Window و هزینه را در نظر بگیرید. Model IDها و قیمت‌ها ممکن است تغییر کنند؛ بنابراین صفحه مدل‌های درواره را بررسی کنید.

آیا استفاده از هوش مصنوعی داخل IDE جای برنامه‌نویس را می‌گیرد؟

خیر. ابزار هوش مصنوعی می‌تواند در تولید کد اولیه، توضیح خطا و پیشنهاد تست کمک کند، اما طراحی معماری، اعتبارسنجی، تست، بررسی داده و مسئولیت انتشار کد همچنان بر عهده تیم توسعه است.

جمع‌بندی

PyCharm یک IDE تخصصی و قدرتمند برای توسعه Python است. ارزش اصلی آن فقط در Code Completion خلاصه نمی‌شود؛ مدیریت Interpreter، Virtual Environment، Run Configuration، Debugger، Refactoring، Test Runner و یکپارچگی با Jupyter و Git آن را به محیط مناسبی برای پروژه‌های حرفه‌ای تبدیل می‌کند.

برای استفاده صحیح از PyCharm:

  1. Python و PyCharm را از منابع رسمی نصب کنید.
  2. برای هر پروژه Virtual Environment جداگانه بسازید.
  3. Interpreter فعال را بررسی کنید.
  4. وابستگی‌ها را در فایل پروژه ثبت کنید.
  5. Working Directory و Run Configuration را درست تنظیم کنید.
  6. از Debugger برای پیدا‌کردن علت خطا استفاده کنید.
  7. منطق اصلی را با Pytest آزمایش کنید.
  8. API Key را خارج از کد نگه دارید.
  9. درخواست API را در Unit Test Mock کنید.
  10. کد و خروجی مدل هوش مصنوعی را پیش از استفاده بررسی کنید.

برای اضافه‌کردن قابلیت‌های هوش مصنوعی به پروژه‌های Python می‌توانید در درواره ثبت‌نام کنید، API Key بسازید و با یک Base URL به مدل‌های مختلف دسترسی داشته باشید. برای انتخاب Model ID و مشاهده قیمت به‌روز مدل‌ها، صفحه مدل‌ها و قیمت‌های درواره را ببینید.

منابع رسمی

مقالات مرتبط

برای مطالعه شرایط استفاده و محدودیت‌های مسئولیت، صفحه «سلب مسئولیت» را مشاهده کنید.

Read more

اتوماسیون هوش مصنوعی چیست؟ کاربردها و آموزش ساخت AI Automation

اتوماسیون هوش مصنوعی چیست؟ کاربردها و آموزش ساخت AI Automation

اتوماسیون هوش مصنوعی با ترکیب گردش‌کارهای خودکار و مدل‌های هوش مصنوعی، پردازش متن، دسته‌بندی، استخراج اطلاعات و تصمیم‌های پیشنهادی را خودکار می‌کند. در این راهنما، معماری و ساخت نمونه عملی آن با API درواره را می‌آموزید.

Agentic Commerce چیست؟ آینده خرید با ایجنت هوش مصنوعی

Agentic Commerce چیست؟ آینده خرید با ایجنت هوش مصنوعی

Agentic Commerce شیوه‌ای جدید برای خرید اینترنتی است که در آن ایجنت هوش مصنوعی می‌تواند نیاز کاربر را بفهمد، محصولات را جست‌وجو و مقایسه کند و فرایند خرید را پیش ببرد. در این راهنما با معماری، UCP، ACP و پیاده‌سازی آن با API درواره آشنا می‌شوید.