• Главная
  • Обзоры
  • Разработка полного стека без бюджета: создание проекта, используя только бесплатные дипломы магистра права.
Image

Разработка полного стека без бюджета: создание проекта, используя только бесплатные дипломы магистра права.

Содержание

Создайте полнофункциональный инструмент для составления кратких обзоров совещаний с использованием ИИ, React, FastAPI и бесплатных LLM-программ. Без бюджета, полный код прилагается.

Разработка полного стека без бюджета: создание проекта с использованием только бесплатных дипломов магистра права.
Изображение предоставлено автором.

# Введение

Помните времена, когда для создания полнофункционального приложения требовались дорогостоящие облачные кредиты, дорогие API-ключи и команда инженеров? Эти времена официально прошли. К 2026 году разработчики смогут создавать, развертывать и масштабировать готовые к производству приложения, используя только бесплатные инструменты, включая большие языковые модели (LLM), которые лежат в основе их интеллектуальных функций.

Ситуация кардинально изменилась. Модели с открытым исходным кодом теперь бросают вызов своим коммерческим аналогам. Бесплатные помощники по программированию на основе ИИ выросли из простых инструментов автозаполнения в полноценных агентов программирования, способных проектировать целые функции. И, пожалуй, самое важное: вы можете запускать самые современные модели локально или через щедрые бесплатные тарифные планы, не потратив ни копейки.

В этой подробной статье мы создадим реальное приложение — программу для составления кратких обзоров совещаний на основе искусственного интеллекта. Пользователи будут загружать голосовые записи, а наше приложение будет их расшифровывать, извлекать ключевые моменты и пункты действий, и отображать все это на удобной панели управления, используя при этом совершенно бесплатные инструменты.

Независимо от того, являетесь ли вы студентом, выпускником буткемпа или опытным разработчиком, стремящимся создать прототип своей идеи, это руководство покажет вам, как использовать лучшие бесплатные инструменты искусственного интеллекта. Начните с понимания того, почему бесплатные магистерские программы так хорошо работают сегодня.

# Понимание того, почему бесплатные большие языковые модели работают сейчас

Всего два года назад создание приложения на основе ИИ означало выделение средств на приобретение кредитов для API OpenAI или аренду дорогостоящих графических процессоров. Экономическая ситуация кардинально изменилась.

Разрыв между коммерческими и открытыми LLM-системами практически исчез. Такие модели, как GLM-4.7-Flash от Zhipu AI, демонстрируют, что открытый исходный код может достигать самых современных показателей производительности, оставаясь при этом полностью бесплатным в использовании. Аналогично, LFM2-2.6B-Transcript была специально разработана для составления резюме совещаний и работает полностью на устройстве с качеством облачного уровня.

Это означает, что вы больше не привязаны к одному поставщику. Если одна модель не подходит для ваших задач, вы можете перейти на другую, не меняя свою инфраструктуру.

// Присоединение к движению за самостоятельное размещение

Всё чаще предпочтение отдаётся локальному запуску моделей ИИ на собственном оборудовании, а не отправке данных в облако. Это связано не только со стоимостью; важны конфиденциальность, задержка и контроль. С помощью таких инструментов, как Ollama и LM Studio , можно запускать мощные модели на ноутбуке.

// Внедрение модели «Принеси свой ключ»

Появилась новая категория инструментов: приложения с открытым исходным кодом, которые бесплатны, но требуют предоставления собственных ключей API. Это обеспечивает максимальную гибкость. Вы можете использовать API Google Gemini (который ежедневно предоставляет сотни бесплатных запросов) или запускать полностью локальные модели без каких-либо текущих затрат.

# Выбор бесплатного набора инструментов искусственного интеллекта

Анализ лучших бесплатных вариантов для каждого компонента нашего приложения включает в себя выбор инструментов, которые обеспечивают баланс между производительностью и простотой использования.

// Слои транскрипции: преобразование речи в текст

Для преобразования аудио в текст у нас есть отличные бесплатные инструменты для преобразования речи в текст (STT).

Инструмент Тип Бесплатный уровень Лучше всего подходит для
OpenAI Whisper модель с открытым исходным кодом Безлимитный (самостоятельное размещение) Точность, поддержка нескольких языков
Whisper.cpp Реализация с упором на конфиденциальность Без ограничений (с открытым исходным кодом) сценарии, требующие соблюдения конфиденциальности
API Gemini Облачный API 60 запросов в минуту Быстрое прототипирование

Для нашего проекта мы будем использовать Whisper , который можно запустить локально или через бесплатные хостинговые решения. Он поддерживает более 100 языков и создает высококачественные транскрипты.

// Резюмирование и анализ: Большая языковая модель

Здесь у вас самый широкий выбор. Все перечисленные ниже варианты совершенно бесплатны:

Модель Поставщик Тип Специализация
GLM-4.7-Flash Жипу А.И. Облачное приложение (бесплатный API) Программирование общего назначения
LFM2-2.6B-Транскрипт Жидкий ИИ Локальный/на устройстве Подведение итогов совещания
Вспышка Gemini 1.5 Google Облачный API Подробный контекст, бесплатный уровень
GPT-OSS Глотка Токийский технологический институт Локальный/самостоятельно размещенный Японско-английская логика

Для нашего инструмента для составления кратких обзоров совещаний особенно интересна модель LFM2-2.6B-Transcript ; она была специально обучена для этого конкретного случая и работает менее чем на 3 ГБ оперативной памяти.

// Ускорение разработки: помощники в программировании на основе искусственного интеллекта

Прежде чем написать хотя бы одну строчку кода, давайте рассмотрим инструменты, которые помогают нам более эффективно создавать код в интегрированной среде разработки (IDE):

Инструмент Бесплатный уровень Тип Ключевая особенность
Сотоварищ Полностью бесплатно Расширение VS Code Многоагентная система, управляемая SPEC
Кодеиум Неограниченное количество бесплатных Расширение IDE Более 70 языков, быстрая обработка информации.
Клайн Бесплатно (приносите свои напитки) Расширение VS Code Автономное редактирование файлов
Продолжать Полностью открытый исходный код Расширение IDE Работает с любой программой магистратуры (LLM).
болт.сделай сам Самостоятельно размещенный IDE для браузера Полномасштабное создание стека

Наша рекомендация: для этого проекта мы будем использовать Codeium из-за его неограниченного бесплатного уровня и скорости, а Continue оставим в качестве резервного варианта на случай, если нам понадобится переключаться между различными поставщиками LLM-услуг.

// Обзор традиционного бесплатного стека технологий

  • Фронтенд: React (бесплатный и с открытым исходным кодом)
  • Бэкенд: FastAPI (Python, бесплатно)
  • База данных: SQLite (файловая, сервер не требуется)
  • Развертывание: Vercel (щедрый бесплатный тариф) + Render (для бэкэнда)

# Обзор плана проекта

Определение рабочего процесса приложения:

  1. Пользователь загружает аудиофайл (запись совещания, голосовую заметку, лекцию).
  2. Бэкенд получает файл и передает его в Whisper для транскрипции.
  3. Расшифрованный текст отправляется магистрату права для составления краткого изложения.
  4. В рамках программы LLM извлекаются ключевые моменты для обсуждения, пункты плана действий и принятые решения.
  5. Результаты хранятся в SQLite.
  6. Пользователь видит понятную панель управления с расшифровкой, сводкой и пунктами действий.

Профессиональная блок-схема, состоящая из семи последовательных шагов.
Профессиональная блок-схема с семью последовательными шагами | Изображение предоставлено автором

// Предварительные условия

  • Установлен Python 3.9+
  • Установлены Node.js и npm.
  • Базовые знания Python и React.
  • Редактор кода (рекомендуется VS Code)

// Шаг 1: Настройка бэкэнда с помощью FastAPI

Сначала создайте каталог нашего проекта и настройте виртуальное окружение:

mkdir meeting-summarizer cd meeting-summarizer python -m venv venv

Активируйте виртуальную среду:

# В Windows: venvScriptsactivate # В Linux/macOS: source venv/bin/activate

Установите необходимые пакеты:

pip install fastapi uvicorn python-multipart openai-whisper transformers torch openai

Теперь создайте файл main.py для нашего приложения FastAPI и добавьте в него следующий код:

from fastapi import FastAPI, File, UploadFile, HTTPException from fastapi.middleware.cors import CORSMiddleware import whisper import sqlite3 import json import os from datetime import datetime app = FastAPI() # Включение CORS для фронтенда React app.add_middleware( CORSMiddleware, allow_origins=[«http://localhost:3000»], allow_methods=[«*»], allow_headers=[«*»], ) # Инициализация модели Whisper — использование «tiny» для более быстрой обработки ЦП print(«Загрузка модели Whisper (tiny)…») model = whisper.load_model(«tiny») print(«Модель Whisper загружена!») # Настройка базы данных def init_db(): conn = sqlite3.connect('meetings.db') c = conn.cursor() c.execute('''CREATE TABLE IF NOT EXISTS meetings (id INTEGER PRIMARY KEY AUTOINCREMENT, filename TEXT, transcript TEXT, summary TEXT, action_items TEXT, created_at TIMESTAMP)''') conn.commit() conn.close() init_db() async def summarize_with_llm(transcript: str) -> dict: «»»Заполнитель для логики суммирования LLM»»» # Это будет реализовано на шаге 2 return {«summary»: «Ожидание сводки…», «action_items»: []} @app.post(«/upload») async def upload_audio(file: UploadFile = File(…)): file_path = f»temp_{file.filename}» with open(file_path, «wb») as buffer: content = await file.read() buffer.write(content) try: # Шаг 1: Транскрибирование с помощью Whisper result = model.transcribe(file_path, fp16=False) transcript = result[«text»] # Шаг 2: Сводка (Заполняется на шаге 2) summary_result = await summarize_with_llm(transcript) # Шаг 3: Сохранение в базу данных conn = sqlite3.connect('meetings.db') c = conn.cursor() c.execute( «INSERT INTO meetings (filename, transcript, summary, action_items, created_at) VALUES (?, ?, ?, ?, ?)», (file.filename, transcript, summary_result[«summary»], json.dumps(summary_result[«action_items»]), datetime.now()) ) conn.commit() meeting_id = c.lastrowid conn.close() os.remove(file_path) return { «id»: meeting_id, «transcript»: transcript, «summary»: summary_result[«summary»], «action_items»: summary_result[«action_items»] } except Exception as e: if os.path.exists(file_path): os.remove(file_path) raise HTTPException(status_code=500, detail=str(e))

// Шаг 2: Интеграция свободной большой языковой модели

Теперь давайте реализуем функцию summarize_with_llm(). Мы покажем два подхода:

Вариант A: Использование API GLM-4.7-Flash (облачное решение, бесплатно)

from openai import OpenAI async def summarize_with_llm(transcript: str) -> dict: client = OpenAI(api_key=»YOUR_FREE_ZHIPU_KEY», base_url=»https://open.bigmodel.cn/api/paas/v4/») response = client.chat.completions.create( model=»glm-4-flash», messages=[ {«role»: «system», «content»: «Summarize the following meeting transcript and extract action items in JSON format.»}, {«role»: «user», «content»: transcript} ], response_format={«type»: «json_object»} ) return json.loads(response.choices[0].message.content)

Вариант B: Использование локальной расшифровки LFM2-2.6B (локальная, полностью бесплатная)

from transformers import AutoModelForCausalLM, AutoTokenizer import torch async def summarize_with_llm_local(transcript): model_name = «LiquidAI/LFM2-2.6B-Transcript» tokenizer = AutoTokenizer.from_pretrained(model_name) model = AutoModelForCausalLM.from_pretrained( model_name, torch_dtype=torch.float16, device_map=»auto» ) prompt = f»Analyze this transcript and provide a summary and action items:nn{transcript}» inputs = tokenizer(prompt, return_tensors=»pt»).to(model.device) with torch.no_grad(): outputs = model.generate(**inputs, max_new_tokens=500) return tokenizer.decode(outputs[0], skip_special_tokens=True)

// Шаг 3: Создание фронтенда на React

Создайте простой React-интерфейс для взаимодействия с нашим API. В новом окне терминала создайте React-приложение:

npx create-react-app frontend cd frontend npm install xios

Замените содержимое файла src/App.js следующим:

import React, { useState } from 'react'; import axios from 'axios'; import './App.css'; function App() { const [file, setFile] = useState(null); const [uploading, setUploading] = useState(false); const [result, setResult] = useState(null); const [error, setError] = useState(''); const handleUpload = async () => { if (!file) { setError('Пожалуйста, выберите файл'); return; } setUploading(true); const formData = new FormData(); formData.append('file', file); try { const response = await axios.post('http://localhost:8000/upload', formData); setResult(response.data); } catch (err) { setError('Загрузка не удалась: ' + (err.response?.data?.detail || err.message)); } finally { setUploading(false); } }; return (

AI Meeting Summarizer

setFile(e.target.files[0])} disabled={uploading} /> {error &&

{error}

}

{result && (

Summary

{result.summary}

Action Items

    {result.action_items.map((it, i) =>

  • {it}
  • )}

)}

); } export default App;

// Шаг 4: Запуск приложения

  • Запустите бэкенд: в основной директории с активной виртуальной средой выполните команду `uvicorn main:app —reload`.
  • Запуск фронтенда: В новом терминале, в директории frontend, выполните команду npm start.
  • Откройте http://localhost:3000 в своем браузере и загрузите тестовый аудиофайл.

Интерфейс панели управления, отображающий сводные результаты.
Интерфейс панели управления с отображением сводных результатов | Изображение предоставлено автором

# Развертывание приложения бесплатно

Как только ваше приложение заработает локально, пришло время развернуть его в мире — по-прежнему бесплатно. Render предлагает щедрый бесплатный тариф для веб-сервисов. Загрузите свой код в репозиторий GitHub, создайте новый веб-сервис в Render и используйте следующие настройки:

  • Окружение: Python 3
  • Команда сборки: pip install -r requirements.txt
  • Команда запуска: uvicorn main:app —host 0.0.0.0 —port $PORT

Создайте файл requirements.txt:

fastapi uvicorn python-multipart openai-whisper transformers torch openai

Примечание: Whisper и Transformers требуют значительного дискового пространства. Если вы достигли лимитов бесплатного тарифа, рассмотрите возможность использования облачного API для транскрипции.

// Развертывание фронтенда на Vercel

Vercel — это самый простой способ развертывания приложений React:

  • Установите Vercel CLI: npm i -g vercel
  • В директории вашего фронтенда запустите vercel.
  • Обновите URL-адрес API в файле App.js, чтобы он указывал на ваш бэкенд Render.

// Изучение альтернатив локального развертывания

Если вы хотите полностью избежать облачного хостинга, вы можете развернуть как фронтенд, так и бэкенд на локальном сервере, используя такие инструменты, как ngrok, для временного предоставления доступа к вашему локальному серверу.

# Заключение

Мы только что создали готовое к использованию в производственных условиях приложение на основе ИИ, используя исключительно бесплатные инструменты. Давайте подведем итоги того, чего мы достигли:

  • Транскрипция: Использовался инструмент Whisper от OpenAI (бесплатный, с открытым исходным кодом).
  • Вкратце: использовалась программа GLM-4.7-Flash или LFM2-2.6B (обе полностью бесплатны).
  • Бэкенд: Создан с использованием FastAPI (бесплатная библиотека).
  • Фронтенд: Создан с использованием React (бесплатная версия).
  • База данных: используется SQLite (бесплатная).
  • Развертывание: Развернуто на платформах Vercel и Render (бесплатные тарифы).
  • Разработка: Ускорена с помощью бесплатных помощников по программированию на основе ИИ, таких как Codeium.

Перспективы для бесплатной разработки ИИ никогда не были столь многообещающими. Модели с открытым исходным кодом теперь конкурируют с коммерческими предложениями. Локальные инструменты ИИ обеспечивают нам конфиденциальность и контроль. А щедрые бесплатные тарифные планы от таких провайдеров, как Google и Zhipu AI, позволяют нам создавать прототипы без финансового риска.

Шитту Олумиде — инженер-программист и технический писатель, увлеченный использованием передовых технологий для создания захватывающих повествований, обладающий острым вниманием к деталям и умением упрощать сложные концепты. Шитту также можно найти в Твиттере.

Источник: www.kdnuggets.com

✅ Найденные теги: Дипломы, Магистр Права, новости, Полный Стек, Проект, Разработка

ОСТАВЬТЕ СВОЙ КОММЕНТАРИЙ

Каталог бесплатных опенсорс-решений, которые можно развернуть локально и забыть о подписках

галерея

Интерфейс управления командой агентов для исследования тем Reddit, веба и Twitter.
Карта Эквадора на фоне Земли, проигрывается Radio Complice FM.
Программное окно Dangerzone, выбор и сохранение безопасных PDF-документов.
ideipro logotyp
Интерфейс Sentry с описанием ошибок и деталями инцидента для macOS.
Карта Германии с маршрутом, указателями и видом на сельскую местность рядом с Штраленом.
Веб-дизайн с графиками и изображениями: апельсины, диаграммы, кот с бокалом.
ideipro logotyp
ideipro logotyp
Image Not Found

Впишите свой почтовый адрес и мы будем присылать вам на почту самые свежие новости в числе самых первых