LOGGET – MẠNG XÃ HỘI NHẬT KÝ ĐỜI SỐNG TÍCH HỢP TRÍ TUỆ NHÂN TẠO

0 comments0 reviews

#CHƯƠNG 1. GIỚI THIỆU ĐỀ TÀI

#1.1.1 Bối cảnh

Sự phát triển của mạng xã hội đã làm thay đổi đáng kể cách con người ghi lại, lưu trữ và chia sẻ các hoạt động trong cuộc sống. Người dùng hiện nay có thể dễ dàng chụp ảnh, quay video, viết trạng thái hoặc chia sẻ hoạt động của mình lên các nền tảng trực tuyến.

Tuy nhiên, phần lớn các nền tảng mạng xã hội hiện nay tập trung vào việc:

  • Chia sẻ nội dung đã được hoàn thiện.
  • Tương tác thông qua lượt thích, bình luận và chia sẻ.
  • Xây dựng hình ảnh cá nhân.
  • Tối ưu hóa lượng tương tác và thời gian sử dụng.

Điều này tạo ra một khoảng trống đối với những nội dung rất ngắn và mang tính đời thường.

Một người có thể muốn lưu lại:

  • Một bữa ăn với bạn bè.
  • Một buổi học.
  • Một trận bóng.
  • Một buổi sinh hoạt câu lạc bộ.
  • Một khoảnh khắc vui trong ngày.
  • Một đoạn video vài giây.
  • Một suy nghĩ ngắn.
  • Một hoạt động bất chợt.

Nhưng không phải mọi khoảnh khắc đều đủ quan trọng để trở thành một bài đăng hoàn chỉnh.

Bên cạnh đó, người dùng thường có rất nhiều dữ liệu cá nhân nhưng ít khi thực sự xem lại chúng. Hàng trăm ảnh, video, ghi chú và hoạt động được tạo ra nhưng nhanh chóng bị trôi khỏi dòng thời gian.

#1.1.2 Vấn đề cần giải quyết

Đề tài tập trung giải quyết ba vấn đề chính.

Thứ nhất, việc ghi lại cuộc sống còn có nhiều thao tác.

Người dùng thường phải mở camera, chọn chế độ, chụp/quay, chỉnh sửa, viết caption và quyết định có đăng hay không.

Thứ hai, dữ liệu cuộc sống chưa được khai thác hiệu quả.

Ảnh, video và ghi chú không chỉ là dữ liệu để lưu trữ. Chúng có thể chứa nhiều thông tin về:

  • Hoạt động người dùng đang thực hiện.
  • Bối cảnh.
  • Địa điểm.
  • Thời gian.
  • Con người xuất hiện trong khoảnh khắc.
  • Mức độ tương tác xã hội.
  • Sự thay đổi trong thói quen sử dụng ứng dụng.

Thứ ba, mạng xã hội hiện tại chủ yếu yêu cầu người dùng chủ động tạo nội dung.

Logget hướng tới mô hình ngược lại:

Người dùng chỉ cần sống, ghi lại một khoảnh khắc hoặc viết một dòng ngắn; hệ thống hỗ trợ người dùng biến các dữ liệu nhỏ đó thành một dòng nhật ký sống động và có thể trở thành nội dung xã hội.

#1.1.3 Ý tưởng đề tài

Logget là một mạng xã hội tập trung vào micro-journaling – nhật ký đời sống ngắn, cho phép người dùng:

  • Chụp ảnh.
  • Quay video ngắn.
  • Viết note.
  • Lưu lại các hoạt động.
  • Xem lại những gì mình đã ghi lại.
  • Nhận phân tích tự động từ AI.
  • Nhận điểm đánh giá hoạt động theo thời gian.
  • Nhận gợi ý hoạt động phù hợp.
  • Trong các phiên bản tương lai, chia sẻ và tương tác với bạn bè.

Thay vì yêu cầu người dùng phải tạo một bài đăng hoàn chỉnh, Logget hướng tới việc biến những khoảnh khắc nhỏ thành dữ liệu xã hội và cá nhân.


#1.2.1 Mục tiêu chính

Mục tiêu chính của đề tài là xây dựng một mạng xã hội thế hệ mới dựa trên dữ liệu đời sống ngắn, trong đó AI đóng vai trò phân tích và hỗ trợ thay vì chỉ sinh văn bản.

Hệ thống hướng tới:

  1. Ghi lại khoảnh khắc nhanh.
  2. Lưu trữ ảnh, video và note.
  3. Tự động phân tích dữ liệu.
  4. Đánh giá hoạt động theo thời gian.
  5. Hỗ trợ người dùng xem lại cuộc sống của mình.
  6. Tạo nền tảng cho các tính năng xã hội trong tương lai.

#1.2.2 Mục tiêu phụ

Đề tài hướng tới ba mục tiêu dài hạn:

Mục tiêu kinh doanh

Xây dựng sản phẩm có khả năng phát triển thành một nền tảng thương mại và mạng xã hội quy mô lớn.

Mục tiêu xã hội

Khuyến khích việc ghi lại và chia sẻ những khoảnh khắc đời thường theo hướng tự nhiên, nhân văn hơn thay vì chỉ tập trung vào hình ảnh được chỉnh sửa và hoàn thiện.

Mục tiêu hệ sinh thái

Sau khi nền tảng có đủ người dùng và dữ liệu, Logget có thể mở rộng thành hệ sinh thái bao gồm:

  • Mạng xã hội.
  • Nhật ký cá nhân.
  • AI cá nhân.
  • Khám phá hoạt động.
  • Kết nối bạn bè.
  • Hồ sơ hoạt động.
  • Dịch vụ dành cho cộng đồng.

#1.2.3 Đối tượng sử dụng

Đối tượng người dùng mục tiêu là người trẻ, đặc biệt:

  • Học sinh.
  • Sinh viên.
  • Người thường xuyên tham gia hoạt động ngoại khóa.
  • Thành viên câu lạc bộ.
  • Người có nhiều nhóm bạn.
  • Người thích chụp ảnh/quay video.
  • Người thường xuyên chia sẻ hoạt động lên mạng xã hội.
  • Những nhóm bạn thân có nhiều hoạt động chung.

#1.2.4 Phạm vi MVP

Phiên bản MVP/V1 tập trung vào:

  • Chụp ảnh.
  • Quay video ngắn.
  • Lưu dữ liệu.
  • Take note.
  • Chat AI.
  • Phân tích ảnh/video/note.
  • Đánh giá hoạt động sau một khoảng thời gian.
  • Xem lại dữ liệu đã upload.
  • Gợi ý hoạt động cơ bản.

Các chức năng xã hội nâng cao chưa nằm trong MVP.


#1.3.1 Định hướng sản phẩm

Logget được xây dựng dựa trên ba lớp trải nghiệm:

CAPTURE
   ↓
UNDERSTAND
   ↓
CONNECT

Trong đó:

#Capture

Người dùng ghi lại cuộc sống:

  • Ảnh.
  • Video.
  • Note.

#Understand

AI và hệ thống phân tích:

  • Nội dung hình ảnh.
  • Nội dung video.
  • Hoạt động.
  • Thời gian.
  • Tần suất sử dụng.
  • Các mẫu hành vi.

#Connect

Hệ thống trong tương lai cho phép:

  • Chia sẻ.
  • Kết nối bạn bè.
  • Xem hoạt động của nhau.
  • Thể hiện trạng thái.
  • Tham gia hoạt động chung.

#1.3.2 Định hướng AI

Một nguyên tắc quan trọng của đề tài là:

AI không chỉ là chatbot sinh văn bản.

AI được sử dụng chủ yếu để nhận biết, phân loại, tính toán, dự đoán và đề xuất.

Các hướng AI đề xuất:

AI Computer Vision

Phân tích ảnh:

  • Nhận diện cảnh.
  • Nhận diện vật thể.
  • Phân loại hoạt động.
  • Nhận diện bối cảnh.
  • Phát hiện nhiều người.
  • Ước lượng mức độ hoạt động xã hội.

Ví dụ:

Ảnh:
5 người + sân bóng + ngoài trời
        ↓
AI Vision
        ↓
Activity:
"Team Sports"

Social Context:
"Group Activity"

Environment:
"Outdoor"

AI Video Understanding

Đối với video ngắn, hệ thống có thể:

  1. Lấy các frame đại diện.
  2. Phân tích từng frame.
  3. Theo dõi thay đổi theo thời gian.
  4. Tổng hợp thành một activity classification.

Ví dụ:

Video 8 giây
     ↓
Frame Sampling
     ↓
Vision Model
     ↓
Temporal Analysis
     ↓
"Playing Football"

AI Multimodal Embedding

Ảnh, video và note có thể được chuyển thành vector embedding.

Điều này cho phép hệ thống:

  • Tìm các khoảnh khắc tương tự.
  • Nhóm các hoạt động.
  • Tìm lại ký ức liên quan.
  • Phát hiện chủ đề lặp lại.
  • Làm nền tảng cho hệ thống recommendation.

Đây là một hướng AI quan trọng vì nó không cần sinh văn bản.

AI Activity Classification

Hệ thống phân loại hoạt động:

Study
Sports
Travel
Food
Friends
Club
Entertainment
Work
Rest
Other

Kết quả có thể lưu dưới dạng:

{
  "activity": "sports",
  "confidence": 0.94,
  "social_context": "group",
  "environment": "outdoor"
}

AI Behavioral Analysis

Sau khi có dữ liệu trong một khoảng thời gian, hệ thống phân tích:

  • Tần suất hoạt động.
  • Sự đa dạng hoạt động.
  • Mức độ xã hội.
  • Thời gian hoạt động.
  • Xu hướng thay đổi.

Ví dụ:

7 ngày gần nhất

Sports        ████████
Friends       ██████
Study         █████████
Entertainment ███
Rest          ██

AI có thể phát hiện pattern:

Người dùng có xu hướng tham gia nhiều hoạt động nhóm vào cuối tuần.

Đây là behavioral analytics, không phải chatbot.

AI Recommendation

Dựa trên:

  • Hồ sơ người dùng.
  • Lịch sử hoạt động.
  • Hoạt động gần đây.
  • Sở thích.
  • Mức độ tương tác.
  • Các hoạt động trước đây.

hệ thống đề xuất hoạt động.

Ví dụ:

User Profile
     +
Activity History
     +
Context
     ↓
Recommendation Model
     ↓
Possible Activities

Các hình thức đề xuất:

  • Chọn một hoạt động.
  • Danh sách 3–5 hoạt động.
  • Random wheel.
  • "Surprise me".
  • Hoạt động dành cho nhóm bạn.

#1.3.3 Nguyên tắc an toàn

Điểm số AI không được trình bày như một chẩn đoán tâm lý hoặc y khoa.

Thay vì:

"Bạn đang bị stress."

hệ thống nên sử dụng:

"Tuần này bạn có xu hướng ghi nhận ít hoạt động xã hội hơn tuần trước."

Hoặc:

"Hoạt động của bạn trong 7 ngày qua tập trung nhiều vào học tập."

Điều này giúp hệ thống trở thành công cụ phản ánh hành vi thay vì đưa ra chẩn đoán sức khỏe.


Đồ án gồm 6 chương chính:

  • Chương 1: Giới thiệu đề tài.
  • Chương 2: Khảo sát và phân tích yêu cầu.
  • Chương 3: Nền tảng lý thuyết và công nghệ.
  • Chương 4: Phân tích thiết kế, triển khai và đánh giá hệ thống.
  • Chương 5: Các giải pháp và đóng góp nổi bật.
  • Chương 6: Kết luận và hướng phát triển.

Ngoài ra đồ án bao gồm:

  • Tài liệu tham khảo.
  • Phụ lục.
  • Đặc tả Use Case.

#CHƯƠNG 2. KHẢO SÁT VÀ PHÂN TÍCH YÊU CẦU

#2.1.1 Mạng xã hội truyền thống

Các nền tảng mạng xã hội phổ biến thường tập trung vào:

  • Feed.
  • Post.
  • Like.
  • Comment.
  • Share.
  • Follow.
  • Story.
  • Short video.

Mô hình phổ biến:

Create Content
      ↓
Edit
      ↓
Publish
      ↓
Social Interaction

Nhược điểm là người dùng thường phải chủ động tạo nội dung.


#2.1.2 Nhật ký cá nhân

Ứng dụng journal truyền thống thường tập trung vào:

  • Text.
  • Mood.
  • Calendar.
  • Personal reflection.

Tuy nhiên chúng thường thiếu yếu tố mạng xã hội.


#2.1.3 Các ứng dụng chia sẻ ảnh/video

Các ứng dụng hình ảnh/video giúp người dùng:

  • Chụp ảnh.
  • Quay video.
  • Chỉnh sửa.
  • Đăng bài.
  • Tương tác.

Tuy nhiên, dữ liệu thường được tối ưu cho việc chia sẻ, không phải việc hiểu lại cuộc sống của người dùng.


#2.1.4 Khoảng trống của giải pháp

Logget kết hợp ba yếu tố:

Đặc điểmMạng xã hộiJournalLogget
Ảnh
VideoHạn chế
Note
AI phân tíchMột phầnMột phần
Phân tích hành viHạn chếHạn chế
SocialThấp
Activity recommendationHạn chếHạn chế
Micro-journalingHạn chếTrọng tâm

#2.2 Tổng quan chức năng

Các Actor chính:

  • User
  • AI Service
  • Database
  • Notification/Scheduler Service
  • Social Users trong các phiên bản sau.

Biểu đồ Use Case tổng quát:


#A. Nhóm Capture

Capture
├── Take Photo
├── Record Video
├── Preview Media
├── Save Media
└── Cancel Media

#B. Nhóm Journal

Journal
├── Create Note
├── Edit Note
├── Save Note
├── View Journal
├── Filter Journal
└── Search Memory

#C. Nhóm AI

AI
├── Analyze Image
├── Analyze Video
├── Analyze Note
├── Classify Activity
├── Calculate Activity Score
├── Analyze Behavior
└── Recommend Activity

#D. Nhóm Social

Social
├── Create Profile
├── Add Friend
├── Follow User
├── Share Activity
├── View Feed
├── React
└── Comment

Nhóm Social được triển khai từ Version 2 trở đi.


#User Flow mặc định

                 ┌── Chụp/Quay ──> Lưu Media ──┐
Mở ứng dụng ─────┤                               ├──> Trang/Tab tính năng
                 └── Không chụp/quay ───────────┘

Chi tiết:

START
  ↓
Open App
  ↓
Capture?
 ┌───────┴────────┐
YES               NO
 ↓                 ↓
Photo/Video       Feature Tab
 ↓
Save
 ↓
Feature Tab

#User Flow Take Note

Take Note
    ↓
Input Text
    ↓
Optional Media
    ↓
Save
    ↓
Database
    ↓
AI Analysis

#User Flow AI

User Input
   ↓
AI Processing
   ↓
Wait for predefined period
   ↓
Automatic Analysis
   ↓
Score / Pattern / Recommendation
   ↓
User Review

#User Flow xem lại

View Again
    ↓
Timeline
    ↓
Filter
 ┌──────┼────┬──────┐
 ↓      ↓    ↓      ↓
Photo Video Note Activity

Luồng dữ liệu chính:

             INPUT
               │
       ┌───────┼────────┐
       ↓       ↓        ↓
     Text     Image    Video
       │       │        │
       └───────┼────────┘
               ↓
          Data Storage
               ↓
            Services
               ↓
          AI Processing
               ↓
          Structured JSON
               ↓
          Data Storage
               ↓
              OUT

Ví dụ:

{
  "media_id": "uuid",
  "type": "image",
  "activity": {
    "label": "sports",
    "confidence": 0.94
  },
  "context": {
    "social": "group",
    "environment": "outdoor"
  },
  "score": {
    "activity": 82,
    "social": 76
  }
}

#2.3 Đặc tả chức năng

#Tên

Capture Activity

#Actor

User

#Mục tiêu

Cho phép người dùng nhanh chóng chụp ảnh hoặc quay video và lưu lại khoảnh khắc.

#Preconditions

  • Ứng dụng đang hoạt động.
  • Người dùng đã cấp quyền camera nếu cần.

#Main Flow

  1. User mở ứng dụng.
  2. Hệ thống hiển thị giao diện capture.
  3. User chụp ảnh hoặc quay video.
  4. Hệ thống hiển thị preview.
  5. User xác nhận lưu.
  6. Hệ thống upload dữ liệu.
  7. Media được lưu database/storage.
  8. AI analysis job được tạo.
  9. Hệ thống chuyển người dùng tới feature tab.

#Alternative Flow

Nếu người dùng hủy:

Preview
  ↓
Cancel
  ↓
Return Camera

#Output

Một media record mới được tạo.


#Tên

Create Journal Note

#Actor

User

#Mục tiêu

Cho phép người dùng lưu lại suy nghĩ hoặc thông tin ngắn.

#Main Flow

  1. User mở Take Note.
  2. Nhập nội dung.
  3. Có thể đính kèm media.
  4. Chọn Save.
  5. Backend validate dữ liệu.
  6. Note được lưu.
  7. AI analysis job được tạo.
  8. Hệ thống phân tích nội dung.
  9. Kết quả được lưu lại.

#Output

Journal entry.


#UC-03 – Phân tích Media

AI phân tích:

  • Activity.
  • Objects.
  • Scene.
  • Social context.
  • Embedding.

#UC-04 – Tính Activity Score

Hệ thống tổng hợp:

  • Activity signals.
  • Frequency.
  • Diversity.
  • Social interaction.
  • Temporal pattern.

#UC-05 – Xem lại Journal

User xem:

  • Photo.
  • Video.
  • Note.
  • Activity.
  • Score.
  • Timeline.

#UC-06 – Nhận Recommendation

Hệ thống sử dụng profile và lịch sử hoạt động để tạo danh sách hoạt động phù hợp.

#UC-07 – AI Conversation

Chat AI được sử dụng như một giao diện tương tác với dữ liệu cá nhân, thay vì trở thành tính năng AI duy nhất.

Ví dụ:

User:
"Tuần này tôi đã làm gì nhiều nhất?"

AI:
Data Retrieval
    ↓
Activity Aggregation
    ↓
Answer

Giá trị chính nằm ở data retrieval + reasoning trên dữ liệu của user, không phải việc viết văn bản.


#2.4 Yêu cầu phi chức năng

  • Thao tác capture phải phản hồi nhanh.
  • Upload media không được làm treo UI.
  • AI processing có thể thực hiện bất đồng bộ.
  • API response cho thao tác thông thường nên ở mức vài trăm mili giây khi không thực hiện AI inference trực tiếp.

Hệ thống phải có khả năng mở rộng:

MVP
 ↓
More Users
 ↓
More Media
 ↓
More AI Jobs
 ↓
Queue / Worker
 ↓
Distributed Services
  • Authentication.
  • Authorization.
  • Password hashing.
  • Token authentication.
  • Validation input.
  • Kiểm soát quyền truy cập media.
  • Không cho phép user truy cập dữ liệu của user khác trái phép.

Do dữ liệu có thể chứa ảnh và video cá nhân, hệ thống cần:

  • Có cơ chế private/public.
  • Kiểm soát quyền chia sẻ.
  • Cho phép xóa dữ liệu.
  • Không sử dụng dữ liệu cá nhân cho mục đích khác nếu chưa có sự đồng ý phù hợp.

Ứng dụng phải:

  • Dễ sử dụng.
  • Capture nhanh.
  • Không yêu cầu nhiều bước.
  • UI trực quan.
  • Phù hợp người dùng trẻ.

Nếu AI service thất bại:

Upload
 ↓
Database
 ↓
AI Failed
 ↓
Retry

Media vẫn phải được lưu thành công.


#CHƯƠNG 3. NỀN TẢNG LÝ THUYẾT VÀ CÔNG NGHỆ SỬ DỤNG

AI trong Logget được chia thành nhiều nhóm.

#Computer Vision

Sử dụng để hiểu ảnh/video.

Các bài toán:

  • Image classification.
  • Object detection.
  • Scene recognition.
  • Image embedding.

#Video Understanding

Video được xử lý thông qua:

Video
 ↓
Frame Extraction
 ↓
Vision Model
 ↓
Temporal Aggregation
 ↓
Activity Classification

#Natural Language Processing

NLP được sử dụng để:

  • Phân tích note.
  • Phân loại chủ đề.
  • Trích xuất keyword.
  • Embedding.
  • Tìm kiếm ngữ nghĩa.

NLP không nhất thiết phải sử dụng LLM sinh văn bản.

#Recommendation System

Hệ thống đề xuất dựa trên:

User Profile
+
Activity History
+
Context
+
Similarity
        ↓
Recommendation

Mỗi media/note có thể được biểu diễn bằng vector:

Content
   ↓
Embedding Model
   ↓
Vector

Ví dụ:

"Đi đá bóng với bạn"
        ↓
[0.12, -0.34, 0.78, ...]

Khi user tìm:

"những lần đi chơi thể thao với bạn"

hệ thống có thể tìm các nội dung tương đồng về ngữ nghĩa thay vì chỉ tìm keyword chính xác.


Một khoảnh khắc riêng lẻ có giá trị hạn chế.

Nhưng:

Day 1
Day 2
Day 3
...
Day 7

tạo thành behavioral timeline.

Hệ thống có thể tính:

  • Activity frequency.
  • Activity diversity.
  • Social activity ratio.
  • Personal activity ratio.
  • Active hours.
  • Weekly change.

Hệ thống gồm:

Frontend
   ↓ HTTP/REST
Backend API
   ↓
Services
   ↓
Database / Storage
   ↓
AI Services

#Frontend

  • React.
  • JavaScript/TypeScript.
  • Vite.
  • CSS/Tailwind hoặc UI framework phù hợp.

#Backend

  • Python.
  • FastAPI.
  • Pydantic.
  • SQLAlchemy.

#Database

  • PostgreSQL.

#Migration

  • Alembic.

#AI

Có thể tích hợp:

  • PyTorch.
  • OpenCV.
  • Librosa khi cần xử lý audio trong các module tương lai.
  • Hugging Face Transformers.
  • Sentence Transformers.
  • Các model Computer Vision phù hợp.

#Storage

MVP có thể sử dụng:

Local File Storage

và có thể chuyển sang:

Object Storage

khi hệ thống mở rộng.


#CHƯƠNG 4. PHÂN TÍCH THIẾT KẾ, TRIỂN KHAI VÀ ĐÁNH GIÁ HỆ THỐNG

#4.1 Thiết kế kiến trúc

MVP sử dụng kiến trúc Layered Architecture kết hợp Service-Oriented Design.

Lý do:

  • Dễ phát triển.
  • Dễ kiểm thử.
  • Tách business logic.
  • Có thể mở rộng AI service.
  • Phù hợp nhóm phát triển nhỏ.

Không nên triển khai microservices hoàn chỉnh ngay từ MVP vì sẽ tạo thêm:

  • Network complexity.
  • Deployment complexity.
  • Monitoring complexity.
  • Data consistency issues.

Do đó:

MVP dùng modular monolith, nhưng thiết kế module đủ độc lập để tách service khi cần.


┌──────────────────────────────┐
│          Frontend            │
│           React              │
└──────────────┬───────────────┘
               │ REST API
┌──────────────▼───────────────┐
│          FastAPI             │
├──────────────────────────────┤
│ API Layer                    │
│ Authentication               │
│ Validation                   │
│ Business Services            │
│ AI Orchestration             │
└──────┬─────────────┬─────────┘
       │             │
       ▼             ▼
┌────────────┐  ┌─────────────┐
│ PostgreSQL │  │ File Storage│
└────────────┘  └─────────────┘
       │
       ▼
┌──────────────────────────────┐
│         AI Services          │
├──────────────────────────────┤
│ Vision                       │
│ Video Analysis               │
│ NLP                          │
│ Embedding                    │
│ Recommendation               │
│ Behavioral Analysis          │
└──────────────────────────────┘

Backend có thể tổ chức:

backend/
├── app/
│   ├── api/
│   │   ├── routes/
│   │   │   ├── auth.py
│   │   │   ├── media.py
│   │   │   ├── notes.py
│   │   │   ├── activities.py
│   │   │   ├── scores.py
│   │   │   └── recommendations.py
│   │
│   ├── config/
│   ├── database/
│   ├── models/
│   ├── schemas/
│   ├── services/
│   │   ├── media_service.py
│   │   ├── journal_service.py
│   │   ├── activity_service.py
│   │   ├── score_service.py
│   │   └── recommendation_service.py
│   │
│   ├── ai/
│   │   ├── vision/
│   │   ├── video/
│   │   ├── nlp/
│   │   ├── embedding/
│   │   └── recommendation/
│   │
│   ├── storage/
│   └── main.py
│
├── alembic/
├── tests/
└── requirements.txt

#4.2 Thiết kế chi tiết

#Màn hình Home/Capture

Đây là màn hình quan trọng nhất.

Các thành phần:

  • Camera.
  • Capture button.
  • Gallery.
  • Quick note.
  • Navigation.

Mục tiêu:

Người dùng có thể ghi lại một khoảnh khắc với số thao tác tối thiểu.


#Feature Tab

Bao gồm:

Features
├── Take Note
├── AI
├── Score
├── Journal
└── More

#Take Note

Gồm:

  • Text input.
  • Add photo.
  • Add video.
  • Save.

#AI

Không nên thiết kế như một chatbot truyền thống duy nhất.

Có thể chia thành:

AI
├── Ask about my activities
├── Analyze my week
├── Find a memory
└── What should I do?

#Score

Hiển thị:

Your Week

Activity Score       82
Social Activity      76
Activity Diversity   88
Consistency          71

Điểm cần được giải thích bằng dữ liệu quan sát được.


#Journal

Timeline:

12 Sep
├── 08:30 Photo
├── 12:00 Note
├── 16:30 Football
└── 21:00 Photo

Các lớp chính:

User
 ├── id
 ├── username
 └── profile

Media
 ├── id
 ├── user_id
 ├── type
 ├── path
 └── created_at

JournalEntry
 ├── id
 ├── user_id
 ├── text
 └── created_at

AIAnalysis
 ├── id
 ├── media_id
 ├── activity
 ├── confidence
 └── embedding

ActivityScore
 ├── id
 ├── user_id
 ├── score
 └── period

Recommendation
 ├── id
 ├── user_id
 ├── activity
 └── reason

Quan hệ:

User
 │
 ├────< Media
 │
 ├────< JournalEntry
 │
 ├────< ActivityScore
 │
 └────< Recommendation

Media
 │
 └──── AIAnalysis

#4.2.3 Thiết kế cơ sở dữ liệu

TrườngKiểuMô tả
idUUIDPrimary key
usernameVARCHARTên người dùng
emailVARCHAREmail
password_hashVARCHARPassword đã hash
created_atTIMESTAMPNgày tạo

TrườngKiểuMô tả
idUUIDPrimary key
user_idUUIDChủ sở hữu
typeVARCHARimage/video
storage_pathTEXTFile location
created_atTIMESTAMPThời gian

TrườngKiểuMô tả
idUUIDPrimary key
user_idUUIDChủ sở hữu
contentTEXTNội dung
created_atTIMESTAMPThời gian

TrườngKiểuMô tả
idUUIDPrimary key
media_idUUIDMedia
activity_labelVARCHARHoạt động
confidenceFLOATĐộ tin cậy
social_contextVARCHARNgữ cảnh xã hội
environmentVARCHARMôi trường
embeddingVECTORVector embedding

TrườngKiểuMô tả
idUUIDPrimary key
user_idUUIDUser
period_startDATEBắt đầu
period_endDATEKết thúc
activity_scoreFLOATĐiểm hoạt động
social_scoreFLOATĐiểm xã hội
diversity_scoreFLOATĐộ đa dạng

#4.3 Xây dựng ứng dụng

Thành phầnCông nghệ
FrontendReact
BuildVite
BackendFastAPI
LanguagePython
DatabasePostgreSQL
ORMSQLAlchemy
MigrationAlembic
AIPyTorch / Transformers
VisionOpenCV / Vision Models
EmbeddingSentence Transformers
TestingPytest
API TestingHTTPX
Version ControlGit
ContainerizationDocker

Phiên bản MVP hướng tới hoàn thành:

  • Capture photo.
  • Capture short video.
  • Save media.
  • Create note.
  • Save journal.
  • View uploaded content.
  • AI analysis pipeline.
  • Activity classification.
  • Activity score.
  • Basic recommendation.
  • AI interaction.

Các chức năng social nâng cao được đưa vào roadmap.


#4.3.3 Minh họa các chức năng chính

Open App
    ↓
Camera
    ↓
Take Photo
    ↓
Preview
    ↓
Save
Take Note
    ↓
Write
    ↓
Save
    ↓
AI Processing
Photo
 ↓
Vision Model
 ↓
Activity
 ↓
Context
 ↓
Embedding
 ↓
Database
Activities
     +
Frequency
     +
Diversity
     +
Social Context
     ↓
Scoring Engine
     ↓
Weekly Score
User History
     +
Profile
     +
Recent Activities
     ↓
Recommendation Engine
     ↓
Activities

#4.4 Kiểm thử

Kiểm thử:

  • User service.
  • Media service.
  • Note service.
  • Score calculation.
  • Recommendation logic.

Ví dụ:

Input:
10 activities

Expected:
activity_score ∈ [0,100]

Các API cần kiểm thử:

POST /api/v1/media
GET  /api/v1/media
POST /api/v1/notes
GET  /api/v1/journal
GET  /api/v1/scores
GET  /api/v1/recommendations

Kiểm thử toàn bộ pipeline:

Upload
 ↓
Storage
 ↓
Database
 ↓
AI Job
 ↓
AI Analysis
 ↓
JSON
 ↓
Database
 ↓
Frontend

AI cần được đánh giá riêng.

Các chỉ số:

#Classification

  • Accuracy.
  • Precision.
  • Recall.
  • F1-score.

#Recommendation

  • Click-through rate.
  • Acceptance rate.
  • Diversity.
  • Relevance.
  • Precision@K.
  • Recall@K.

#4.5 Triển khai

Kiến trúc triển khai:

Frontend
   ↓
Backend
   ↓
PostgreSQL
   +
File Storage
   +
AI Service

Trong giai đoạn đầu có thể triển khai trên một server.


                 Load Balancer
                       ↓
              ┌────────┴────────┐
              ↓                 ↓
          API Server        API Server
              │                 │
              └────────┬────────┘
                       ↓
                  PostgreSQL
                       │
          ┌────────────┴────────────┐
          ↓                         ↓
      Object Storage           AI Queue
                                      ↓
                                AI Workers

#CHƯƠNG 5. CÁC GIẢI PHÁP VÀ ĐÓNG GÓP NỔI BẬT

Điểm nổi bật của Logget là thay đổi cách người dùng tạo nội dung.

Mạng xã hội truyền thống:

Think
 ↓
Create
 ↓
Edit
 ↓
Publish

Logget:

Live
 ↓
Capture
 ↓
Understand
 ↓
Share

Người dùng không cần biến mọi khoảnh khắc thành một bài đăng hoàn chỉnh.


Đây là đóng góp kỹ thuật quan trọng.

Thay vì:

User
 ↓
Chatbot
 ↓
Generated Text

Logget sử dụng:

Image ─────┐
Video ─────┤
Text ──────┤
Time ──────┤
History ───┘
      ↓
AI Understanding
      ↓
Structured Data
      ↓
Behavior Analysis
      ↓
Recommendation

AI trở thành lớp hiểu dữ liệu của mạng xã hội.


Một hướng phát triển quan trọng là xây dựng Life Graph.

Ví dụ:

User
 │
 ├── Friend
 │
 ├── Activity
 │     ├── Football
 │     ├── Study
 │     └── Club
 │
 ├── Place
 │
 ├── Time
 │
 └── Memory

Qua thời gian, hệ thống có thể hiểu:

User
 ↓
Who they spend time with
 ↓
What they usually do
 ↓
When they do it
 ↓
What activities they enjoy

Điều này tạo nền tảng cho recommendation và social discovery.


Người dùng không nhất thiết phải nhập:

"Hôm nay tôi đi đá bóng với bạn."

Nếu ảnh/video đã chứa đủ tín hiệu, hệ thống có thể nhận diện:

Activity = Football
Participants = Group
Environment = Outdoor
Time = Evening

Như vậy dữ liệu được tạo ra với ít thao tác hơn.


Thay vì đánh giá ngay lập tức, hệ thống có thể đợi một khoảng thời gian:

Day 1
 ↓
Day 2
 ↓
Day 3
 ↓
...
Day 7
 ↓
AI Analysis
 ↓
Weekly Reflection

Điều này giúp tránh việc đưa ra kết luận chỉ dựa trên một khoảnh khắc.


Recommendation được thiết kế như một lựa chọn.

Ví dụ:

What do you want to do?

[Choose one]

[ Surprise me ]

[Spin the wheel]

Điều này biến AI từ một công cụ "ra lệnh" thành một công cụ hỗ trợ khám phá.


#Version 1 – Personal Logging

Mục tiêu:

Capture → Journal → AI → Score → Reflection

Chức năng:

  • Chụp.
  • Quay.
  • Note.
  • AI.
  • Đánh giá.
  • Journal.
  • Recommendation cơ bản.

#Version 2 – Social

Mục tiêu:

Connect → Share → Interact

Chức năng:

  • Friend.
  • Follow.
  • Share.
  • Feed.
  • Reaction.
  • Comment.

#Version 3 – Activity Log

Mục tiêu:

Biến nhiều khoảnh khắc thành một hoạt động hoàn chỉnh.

Ví dụ:

14:00 Photo
14:20 Video
14:45 Photo
15:10 Note

AI nhận diện chúng thuộc cùng một activity:

14:00–15:10
Football with Friends

Tương tự mô hình setlog.


#Version 4 – Presence

Mục tiêu:

Cho phép người dùng thể hiện trạng thái hiện tại.

Ví dụ:

A
● Studying

B
● At Club Meeting

C
● Playing Football

Tương tự ý tưởng Presence của Discord nhưng tập trung vào hoạt động đời sống.


#Version 5 – AI Quality-of-Life Recommendation

Hệ thống xây dựng profile hành vi và sở thích.

Profile
   +
History
   +
Friends
   +
Context
   +
Time
   ↓
Recommendation Engine

Các chế độ:

  • Recommended.
  • Random.
  • Surprise Me.
  • Spin Wheel.
  • With Friends.
  • Nearby Activity.
  • Weekend Mode.

Ví dụ:

"Bạn đã dành phần lớn tuần này cho học tập. Muốn thử một hoạt động nhóm vào cuối tuần không?"

Hoặc:

"Surprise me."

Hệ thống tự chọn một hoạt động phù hợp.


#CHƯƠNG 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

#6.1 Kết luận

Đề tài Logget hướng tới xây dựng một mô hình mạng xã hội khác với cách tiếp cận truyền thống.

Thay vì tập trung hoàn toàn vào việc tạo các bài đăng hoàn chỉnh, hệ thống bắt đầu từ những khoảnh khắc nhỏ trong cuộc sống:

Photo
Video
Note
   ↓
AI Understanding
   ↓
Activity
   ↓
Personal Memory
   ↓
Social Experience

Hệ thống MVP tập trung vào khả năng ghi lại, lưu trữ và phân tích dữ liệu người dùng. AI được sử dụng để nhận diện hoạt động, phân tích dữ liệu đa phương thức, xây dựng embedding, đánh giá xu hướng và tạo đề xuất.

Điểm quan trọng của đề tài là AI không bị giới hạn ở mô hình chatbot sinh văn bản. Thay vào đó, AI trở thành một lớp perception + analysis + recommendation của hệ thống.

Về lâu dài, Logget có khả năng phát triển từ một ứng dụng journal thành:

Một mạng xã hội hiểu được hoạt động và bối cảnh cuộc sống của người dùng.


#6.2 Hướng phát triển

Xây dựng:

  • Friend graph.
  • Follow graph.
  • Interest graph.
  • Activity graph.

Liên kết:

People
+
Places
+
Activities
+
Time
+
Memories

để tạo thành hồ sơ hoạt động động.


Kết hợp:

Text
Image
Video
Audio
Metadata
Behavior

để nâng cao khả năng hiểu ngữ cảnh.


AI có thể trở thành một lớp trợ lý cá nhân nhưng không nhất thiết phải giao tiếp bằng văn bản.

Ví dụ:

  • Visual timeline.
  • Activity map.
  • Memory clusters.
  • Automatic highlight.
  • Pattern detection.
  • Activity recommendation.

Tích hợp:

  • Online status.
  • Current activity.
  • Group activity.
  • Temporary status.

AI có thể phát hiện những người có hoạt động/sở thích tương đồng:

User A
   ↓
Activity Embedding
   ↓
Similarity Search
   ↓
User B

Từ đó gợi ý:

"Bạn và A thường tham gia các hoạt động tương tự."


Sau khi có lượng người dùng đủ lớn, hệ sinh thái có thể phát triển các nguồn doanh thu:

  • Premium AI.
  • Premium storage.
  • Advanced analytics.
  • Activity discovery.
  • Brand collaboration.
  • Event discovery.
  • Local activity recommendation.
  • Marketplace.

Mô hình thương mại cần được thiết kế sao cho không biến trải nghiệm cá nhân thành việc khai thác dữ liệu quá mức.


#TÀI LIỆU THAM KHẢO

  1. Ian Sommerville, Software Engineering, Pearson.
  2. Robert C. Martin, Clean Architecture, Prentice Hall.
  3. Martin Fowler, Patterns of Enterprise Application Architecture.
  4. PostgreSQL Documentation.
  5. FastAPI Documentation.
  6. SQLAlchemy Documentation.
  7. Alembic Documentation.
  8. React Documentation.
  9. PyTorch Documentation.
  10. OpenCV Documentation.
  11. Hugging Face Documentation.
  12. Sentence Transformers Documentation.
  13. Các tài liệu nghiên cứu về Computer Vision.
  14. Các tài liệu nghiên cứu về Multimodal Learning.
  15. Các tài liệu nghiên cứu về Recommendation Systems.
  16. Các tài liệu nghiên cứu về Human Activity Recognition.

#PHỤ LỤC

                           ┌──────────────┐
                           │   OPEN APP   │
                           └──────┬───────┘
                                  ↓
                       ┌─────────────────────┐
                       │ Capture immediately?│
                       └──────┬────────┬─────┘
                              │        │
                            YES        NO
                              │        │
                              ↓        │
                    ┌──────────────┐   │
                    │ Photo/Video  │   │
                    └──────┬───────┘   │
                           ↓           │
                    ┌──────────────┐   │
                    │ Save Media   │   │
                    └──────┬───────┘   │
                           │           │
                           └─────┬─────┘
                                 ↓
                         ┌──────────────┐
                         │ Feature Tab  │
                         └──────┬───────┘
                                │
             ┌──────────────────┼─────────────────┐
             ↓                  ↓                 ↓
        Take Note            Chat AI             Score
             ↓                  ↓                 ↓
        Save Note          Auto Response      Activity Data
             ↓                  ↓                 ↓
             └──────────────────┼─────────────────┘
                                ↓
                         ┌──────────────┐
                         │   Journal    │
                         └──────┬───────┘
                                ↓
                         View Past Data

#ĐẶC TẢ USE CASE

Thành phầnNội dung
Use CaseCapture Photo
ActorUser
Mục tiêuChụp và lưu ảnh
TriggerUser nhấn capture
PreconditionsCamera available
Main FlowMở camera → chụp → preview → save
AlternativeCancel
PostconditionMedia được lưu

Thành phầnNội dung
Use CaseRecord Video
ActorUser
Mục tiêuQuay video ngắn
Main FlowCamera → record → stop → preview → save
PostconditionVideo được lưu

Thành phầnNội dung
Use CaseCreate Note
ActorUser
Mục tiêuGhi journal
Main FlowOpen Note → Input → Save
PostconditionJournal entry được tạo

Thành phầnNội dung
Use CaseAnalyze Media
ActorAI Service
InputImage/Video
OutputActivity + Context + Embedding
TriggerMedia được lưu
ExecutionAsynchronous

Thành phầnNội dung
Use CaseAnalyze Journal
ActorAI Service
InputText
OutputTopic + Embedding + Activity signals

Thành phầnNội dung
Use CaseCalculate Score
ActorAI/Scoring Service
InputHistorical Activities
OutputScore
TriggerĐến kỳ đánh giá

Các thành phần điểm có thể gồm:

Activity Score
Social Score
Diversity Score
Consistency Score

Thành phầnNội dung
Use CaseView Journal
ActorUser
InputDate/filter
OutputTimeline
Main FlowOpen Journal → Load Entries → Display

Thành phầnNội dung
Use CaseFind Memory
ActorUser
InputText/query
AISemantic Search
OutputRelevant memories

Ví dụ:

Query:
"những lần đi chơi với bạn"

        ↓

Embedding

        ↓

Vector Search

        ↓

Relevant Media

Thành phầnNội dung
Use CaseGet Recommendation
ActorUser
InputUser profile + history
AIRecommendation Engine
OutputActivity suggestions

Triển khai từ Version 2.

Thành phầnNội dung
ActorUser
InputJournal/Activity
OutputSocial Post
FunctionsShare, React, Comment

Triển khai từ Version 3.

Hệ thống gom các media gần nhau về:

  • thời gian;
  • địa điểm;
  • nội dung;
  • embedding;
  • activity classification.

Ví dụ:

18:00 Photo
18:05 Video
18:20 Photo
18:40 Note

AI:

Same Context
     ↓
Activity Clustering
     ↓
"Evening Football"

Triển khai từ Version 4.

Hệ thống sử dụng dữ liệu hoạt động để biểu diễn trạng thái:

● Studying
● Playing Sports
● At Club
● Hanging Out
● Travelling

Người dùng có quyền bật/tắt việc chia sẻ trạng thái.


Triển khai từ Version 5.

Hệ thống sử dụng:

Profile
+
Activity History
+
Preferences
+
Social Graph
+
Context

để đề xuất:

Recommended
Random
Surprise Me
With Friends
Weekend

#KIẾN TRÚC AI TỔNG THỂ ĐỀ XUẤT

Một kiến trúc AI có thể phát triển dần theo roadmap:

                    USER DATA
                       │
        ┌──────────────┼──────────────┐
        ↓              ↓              ↓
       TEXT          IMAGE          VIDEO
        │              │              │
        ↓              ↓              ↓
      NLP           VISION       FRAME SAMPLING
        │              │              │
        │              │              ↓
        │              │        VIDEO VISION
        │              │              │
        └──────────────┼──────────────┘
                       ↓
               MULTIMODAL FEATURES
                       ↓
             ┌─────────┼──────────┐
             ↓         ↓          ↓
         Activity   Embedding   Context
             │         │          │
             └─────────┼──────────┘
                       ↓
                USER ACTIVITY DB
                       ↓
             ┌─────────┼──────────┐
             ↓         ↓          ↓
          Scoring   Behavioral  Search
             │       Analysis      │
             │         │           │
             └─────────┼───────────┘
                       ↓
                Recommendation
                       ↓
                      USER

Đây là phần có thể trở thành điểm nhấn kỹ thuật lớn nhất của đồ án: thay vì nói "ứng dụng có AI chatbot", Logget có một AI pipeline thực sự xử lý dữ liệu đa phương thức và biến dữ liệu thô thành structured behavioral data.


#ĐỊNH HƯỚNG PHÁT TRIỂN SẢN PHẨM

Có thể cô đọng toàn bộ tầm nhìn của Logget thành:

VERSION 1
Personal Logging
        ↓
VERSION 2
Social Network
        ↓
VERSION 3
Life Activity Timeline
        ↓
VERSION 4
Real-time Presence
        ↓
VERSION 5
AI-powered Quality of Life
        ↓
FUTURE
Life-oriented Social Ecosystem

Trong đó:

Mục tiêu cuối cùng không phải xây dựng một ứng dụng journal có tính năng mạng xã hội, mà là xây dựng một mạng xã hội trong đó các hoạt động đời sống là đơn vị nội dung cơ bản.

Điểm khác biệt cốt lõi:

Facebook / Instagram
Post → Social Interaction

Traditional Journal
Thought → Private Reflection

Logget
Moment → AI Understanding → Memory → Social Interaction