Example 14 How many different numbers must be selected from $1,2,3, \cdots, 1000$ to ensure that there are 3 different numbers among the selected ones that can form the lengths of the three sides of a triangle?
Let the required smallest positive integer be $n$. Since in any $n$ different numbers, it is required to ensure the existence of 3 different numbers that can form the three sides of a triangle, it is not easy to find $n$ directly. Therefore, we approach from the opposite direction, examining how many numbers can exist without any 3 different numbers forming the three sides of a triangle. Because for $0 < a_1 < a_2 < \cdots < a_n$, we have $a_2 \geqslant 2, a_3 \geqslant a_1 + a_2 \geqslant 1 + 2 = 3$,
$$
\begin{array}{l}
a_4 \geqslant a_2 + a_3 \geqslant 2 + 3 = 5, a_5 \geqslant a_3 + a_4 \geqslant 3 + 5 = 8, a_6 \geqslant a_4 + a_5 \geqslant 5 + 8 = 13, a_7 \geqslant a_5 + a_6 \geqslant \\
8 + 13 = 21, a_8 \geqslant a_6 + a_7 \geqslant 13 + 21 = 34, a_9 \geqslant a_7 + a_8 = 21 + 34 = 55, a_{10} \geqslant a_8 + a_9 = 34 + \\
55 = 89, a_{11} \geqslant a_9 + a_{10} \geqslant 55 + 89 = 144, a_{12} \geqslant a_{10} + a_{11} \geqslant 89 + 144 = 233, a_{13} \geqslant a_{11} + a_{12} \geqslant \\
144 + 233 = 377, a_{14} \geqslant a_{12} + a_{13} \geqslant 233 + 377 = 610, a_{15} \geqslant a_{13} + a_{14} \geqslant 377 + 610 = 987, a_{16} \geqslant \\
a_{14} + a_{15} \geqslant 610 + 987 = 1597, \text{ which contradicts } a_{16} \leqslant 1000 \text{. }
\end{array}
$$

Therefore, among $a_1, a_2, \cdots, a_{16}$, there must be 3 numbers that can form the three sides of a triangle.
In summary, the minimum number of different numbers to be taken is 16.