Sobre el proyecto
Ziwei Doushu es un sistema de cálculo de cartas de la astrología tradicional china. Este proyecto es un motor de código abierto basado en el sistema de enseñanza de Ni Haixia (Tian Ji), construido con Next.js 14 (App Router) + TypeScript, que abarca algoritmos de cálculo de cartas, base de conocimientos, datos de textos antiguos e interfaz de usuario, además de un conjunto de datos de muestra a gran escala. El autor proporciona el sitio en línea metisziwei.com para experiencia directa.
El algoritmo central de cálculo de cartas se encuentra en el directorio lib/ziwei/: algorithm.ts implementa el flujo completo, incluyendo la colocación del Palacio de la Vida, determinación de los Cinco Elementos, colocación de las 14 estrellas principales y estrellas auxiliares, y cálculo de los límites de edad y años; sihua.ts es el sistema de cuatro transformaciones (Lu, Quan, Ke, Ji), con tablas de correspondencia para cada tallo celestial; patterns.ts es una base de conocimientos de más de 1100 líneas que cubre patrones clásicos como Zi Fu Tong Gong, Ri Yue Bing Ming, Qi Sha Chao Dou; heming-knowledge.ts proporciona metodología de comparación de cartas duales; cities.ts recoge coordenadas de ciudades chinas para corrección de hora solar verdadera; además, constants.ts (constantes de tallos celestiales, ramas terrestres y estrellas), types.ts (definiciones de tipos) y famous.ts (ejemplos de cartas de figuras históricas). El cálculo subyacente depende de las bibliotecas de código abierto iztro y lunar-javascript.
En cuanto a datos de textos antiguos, lib/classics/ incluye los textos originales de "Gu Sui Fu", "Zi Wei Dou Shu Quan Ji" (edición antigua de la dinastía Qing) y "Zi Wei Dou Shu Quan Shu" (transmitido por Chen Xiyi); lib/seo/ proporciona datos estructurados de conocimiento para 14 estrellas principales × 12 palacios, útiles para generación de contenido o construcción de bases de conocimiento.
La interfaz de usuario incluye un área de trabajo de cálculo de cartas (cuadrícula de cartas, detalles de palacios, panel de estrellas), página de análisis de cartas duales, lector de textos antiguos con búsqueda de texto completo, enciclopedia de astrología (páginas de conocimiento de 14 estrellas principales y 12 palacios), soporte para cambio de tema claro/oscuro y adaptación móvil. El estilo utiliza Tailwind CSS y un sistema de diseño con variables CSS, y las animaciones usan Framer Motion.
Conjunto de datos: Los lanzamientos del repositorio proporcionan el conjunto de datos de muestra de cartas v3.0, con un total de 518,400 registros (cubriendo combinaciones de 60 años × 12 meses × 30 días × 12 horas × 2 géneros), con un tamaño total de aproximadamente 5.5 GB, dividido en 3 volúmenes comprimidos con archivos de verificación SHA256. Cada muestra incluye un JSON completo de la carta y texto de interpretación para 13 temas (resumen del destino, riqueza, carrera, relaciones, salud, etc.). El README explica que puede usarse para ajuste fino de modelos pequeños, fuente de recuperación RAG, comparación de línea base A/B después de modificar patterns.ts, e investigación y análisis de astrología.
Límites a tener en cuenta: La parte de código abierto no incluye prompts de interpretación de IA, rutas de API de backend (como /api/interpret, /api/heming, /api/generate), sistema de usuarios, configuración de seguridad del servidor o despliegue. El algoritmo de cálculo de cartas y la interfaz de usuario pueden ejecutarse de forma independiente; si se necesita capacidad de interpretación de IA, se debe implementar la interfaz correspondiente. El README sugiere consultar las bases de conocimiento en patterns.ts y heming-knowledge.ts, combinadas con cualquier LLM para construir prompts.
Inicio rápido: Clonar el repositorio, ejecutar npm install, copiar .env.example a .env.local e ingresar la clave API de IA, luego iniciar el servidor de desarrollo con npm run dev.
Licencia: El código (lib/, app/, components/) está bajo licencia MIT; el conjunto de datos de muestra se puede usar libremente (incluyendo uso comercial), con el único requisito de atribuir la fuente de datos; los textos antiguos originales son de dominio público.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.