Abaixo está uma instrução que descreve uma tarefa de geração de SQL, combinada com uma entrada que fornece mais contexto sobre os esquemas de tabela disponíveis. Escreva o código SQL que responda adequadamente à solicitação
 ###Instrução: Quantos tipos de artefatos estão presentes em cada local de escavação?
 ###Tabelas: 
CREATE TABLE artifact_catalog (artifact_id INT, site_id INT, artifact_type TEXT, artifact_description TEXT, quantity INT); INSERT INTO artifact_catalog (artifact_id, site_id, artifact_type, artifact_description, quantity) VALUES (1, 1, 'ceramic', 'small bowl', 25), (2, 1, 'metal', 'copper pin', 10), (3, 1, 'bone', 'animal figurine', 15), (4, 2, 'ceramic', 'large jar', 35), (5, 2, 'metal', 'bronze spearhead', 20), (6, 2, 'bone', 'bird whistle', 12), (7, 3, 'ceramic', 'intact vase', 50), (8, 3, 'metal', 'iron sword', 30), (9, 3, 'bone', 'human carving', 40), (10, 4, 'stone', 'flint knife', 10), (11, 4, 'stone', 'granite statue', 30), (12, 5, 'bone', 'carved mask', 20), (13, 5, 'bone', 'animal tooth', 10), (14, 6, 'bone', 'human skull', 5), (15, 6, 'bone', 'bone beads', 15), (16, 7, 'ceramic', 'pottery shard', 7), (17, 7, 'ceramic', 'clay pot', 12), (18, 7, 'ceramic', 'ceramic tile', 20), (19, 7, 'wood', 'wooden bowl', 8), (20, 8, 'textile', 'cloth fragment', 6);
SELECT site_id, COUNT(DISTINCT artifact_type) FROM artifact_catalog GROUP BY site_id;