Skip to content

Repository files navigation

Social Coach

LLM-powered social coaching system that extracts actionable social skills from books and applies them to real-world scenarios.

Overview

The pipeline scrapes books from multiple public sources, extracts social coaching concepts using LLMs, tags and validates them, then refines the final corpus for downstream use.

Pipeline

Book Sources → Scraper → Extractor → Tagger → Validator → Refiner → Final Corpus
  1. Scraping: Collects book content from Gutenberg, Open Library, Internet Archive, Google Books
  2. Extraction: Uses LLMs to extract social coaching concepts from book text
  3. Tagging: Categorizes extracted concepts
  4. Validation: Filters and validates quality
  5. Refinement: Produces the final curated corpus

Structure

src/
  book_scraper.py           # Multi-source book scraper
  archive_client.py         # Internet Archive client
  google_books_client.py    # Google Books client
  gutenberg_client.py       # Project Gutenberg client
  openlibrary_client.py     # Open Library client
  extractor.py              # LLM-based concept extraction
  tagger.py                 # Concept tagging
  validator.py              # Quality validation
  refiner.py                # Corpus refinement
  utils.py                  # Shared utilities
data/
  books_metadata.csv        # Metadata for selected books
  books_selected_200.csv    # 200 selected books
  books_content/            # Local-only downloaded book texts
  corpus_extracted.json     # Raw extracted concepts
  corpus_tagged.json        # Tagged concepts
  corpus_validated.json     # Validated concepts
  corpus_final.json         # Final curated corpus
paper/                      # Manuscript submodule
artifact/                   # Anonymous review artifact submodule

The manuscript is maintained in the separate social-coach-paper repository and included here at paper/ as a Git submodule. The anonymized reproduction package is maintained at artifact/. Clone the project and both submodules with:

git clone --recurse-submodules https://github.com/GeminiLight/social-coach-dev.git

For an existing checkout, initialize or refresh both submodules with:

git submodule update --init --recursive

Raw downloaded book texts and run logs are intentionally kept local and are not committed to the public development repository.

Project Page

The polished paper homepage is in docs/ and can be served directly by GitHub Pages. It includes the static HTML/CSS/JS site, paper PDF, visual assets, citation metadata, structured data, sitemap.xml, robots.txt, and llms.txt for SEO/GEO.

Local preview:

python3 -m http.server 4173 --directory docs

Usage

python src/book_scraper.py      # Scrape books
python src/extractor.py         # Extract concepts
python src/tagger.py            # Tag concepts
python src/validator.py         # Validate
python src/refiner.py           # Refine final corpus

Generate a readable, validated catalog from the selected 200-book CSV:

python3 scripts/export_book_list.py

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages