AI通用大模型编程需要的能力

        这几天研究通过通义千问AI大模型编程,有三点感受,分享给大家。如果将来有新的感受,会继续分享。

1、清晰的提示词指令,让输出的成功率更高

2、了解点代码知识,虽不会写,但能看的懂

3、定位代码问题的能力

        通过提示词的方法使用通义千问AI大模型编程的方法,已经在前一篇文章中分享过了,这篇文章将介绍定位问题的能力和方法。

        在使用AI进行代码编程时,AI大模型有时候不能完全理解你的意思,即便输入了几次提示词,依然得不到期望的结果,这时候,解决问题的方法就是打印日志,定位到出现问题的那一行代码,然后告诉AI,这一行代码写错了。

 3.1 案例

        以我使用AI通义千问做网站开发为例,分享一个问题定位的过程。我通过提示词要求AI大模型做一个饼图的统计模块,AI给出的views.py代码如下:

def record_count_by_tag(request):
    is_admin = request.user.is_superuser
    user = request.user

    # 初始化表单
    if request.method == 'GET':
        form = DateRangeForm(request.GET)
    else:
        form = DateRangeForm()

    if form.is_valid():
        start_date = form.cleaned_data.get('start_date')
        end_date = form.cleaned_data.get('end_date')
        stat_type = form.cleaned_data.get('stat_type')
    else:
        start_date = None
        end_date = None
        stat_type = None

    # 根据用户权限和日期筛选记录
    if is_admin and stat_type == 'by_tag':
        all_records = Record.objects.all()
        if start_date and end_date:
            all_records = all_records.filter(date__range=(start_date, end_date))
    elif is_admin and stat_type == 'by_creator':
        all_records = Record.objects.all()
        if start_date and end_date:
            all_records = all_records.filter(date__range=(start_date, end_date))
    else:
        all_records = Record.objects.filter(user=user)
        if start_date and end_date:
            all_records = all_records.filter(date__range=(start_date, end_date))

    # 统计标签
    if is_admin and stat_type == 'by_tag':
        all_tag_counts = all_records.values('tag').annotate(count=Count('tag')).order_by('-count')
    elif is_admin and stat_type == 'by_creator':
        all_tag_counts = all_records.values('user__username').annotate(count=Count('id')).order_by('-count')
    else:
        all_tag_counts = all_records.values('tag').annotate(count=Count('tag')).order_by('-count')

    # 生成饼图的函数
    def generate_pie_chart(data, title, labels=None):
        # 设置中文字体
        plt.rcParams['font.sans-serif'] = ['SimHei']  # 使用黑体或其他支持中文的字体
        plt.rcParams['axes.unicode_minus'] = False  # 解决负号显示问题

        if not data:
       
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

見贤思齊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值